PHP 8.1.7에서 Laravel 9를 실행하는 Docker 컨테이너 애플리케이션에서 zip 아카이브를 추출하려고 하는데 이상한 오류가 발생했습니다.
그러면 컨트롤러에서 이 코드를 사용해 보세요
으아악아카이브의 파일은 올바르게 추출되었지만 다음 오류가 반환됩니다.
오류 예외 ZipArchive::extractTo(/var/www/html/public/my_folder/my_file.xml): 작업 실패: 작업이 허용되지 않음
php artisantinker에서 동일한 코드를 실행하면 작동합니다.
이 문제 해결하신 분 계신가요?
권한 관련 문제는 아닌 것 같습니다 폴더가 777 권한으로 생성되었으며 파일이 올바르게 복사되었습니다.
편집
으아악감사합니다
저도 똑같은 문제를 겪었습니다. 결국, Windows 설치 디렉터리에서 파일을 추출하고 있었기 때문에 이 문제가 발생했습니다.
내 말은
/var//html/public/my_folder
是/mnt/dev/my_folder
的符号链接,来自 Windows (C:例如 devmy_folder
).Linux, Windows와는 파일 시스템이 다르기 때문에 ZipArchive 클래스의 특정 부분이 이 오류를 일으키는 것 같습니다.
이 문제는
으아아아/tmp/my_folder
中的文件然后将其移动到/var//html/public/my_folder
을 추출하여 수정했습니다.도움이 되기를 바랍니다.