폴더에 777 권한을 부여하면 누구나 디렉터리의 모든 파일을 읽고, 수정하고, 실행할 수 있습니다. 이는 모든 사람(전 세계의 모든 해커 또는 악의적인 사람)에게 파일, 바이러스 또는 기타 파일을 업로드한 다음 해당 파일을 실행할 수 있는 권한을 부여했음을 의미합니다.
폴더 권한을 777로 설정하면 해당 디렉토리를 찾을 수 있는 모든 사람에게 서버가 공개됩니다. 알았어요?
Anyone 로고는 누구도 아닌 모든 사용자를 의미합니다. 여전히 서버 액세스가 필요합니다.
소유권과 권한을 설정하는 방법에는 기본적으로 두 가지가 있습니다. 자신에게 소유권을 부여하거나 웹 서버를 모든 파일의 소유자로 만드십시오.
[관련 권장사항: 최신 5개의 Laravel 비디오 튜토리얼]
소유자로서의 웹서버(대부분의 사람들이 하는 일, Laravel 문서가 하는 일):
Assumewww-data
은 웹 서비스 사용자입니다(또한 사용 가능함) 다른 이름).
sudo chown -R www-data:www-data /path/to/your/laravel/root/directory
이렇게 하면 웹 서비스가 소유한 파일도 이 그룹이 되므로 FTP를 사용하여 파일을 업로드할 때 FTP 클라이언트가 웹이 아닌 계정을 사용하여 로그인하기 때문에 몇 가지 문제가 발생합니다. service 이므로 웹 서비스의 사용자 그룹에 사용자를 추가해야 합니다.
sudo usermod -a -G www-data ubuntu
물론 이는 귀하의 웹 서비스가 www-data 사용자(Homestead 기본값)로 실행되고 귀하의 사용자가 ubuntu(또는 Homestead의 경우 vagrant)라고 가정합니다. 그런 다음 모든 디렉터리를 755로 설정하고 모든 파일을 644로 설정합니다.
sudo find /path/to/your/laravel/root/directory -type f -exec chmod 644 {} \;
디렉토리 권한 설정
sudo find /path/to/your/laravel/root/directory -type d -exec chmod 755 {} \;
귀하의 사용자를 소유자로
저는 모든 디렉토리와 파일을 소유하는 것을 선호합니다(모든 것을 더 쉽게 처리할 수 있습니다). 따라서 laravel 루트 디렉토리로 이동합니다:
cd /var/www/html/laravel >> assuming this is your current root directory
sudo chown -R $USER:www-data .
그런 다음 저는 제 자신에게 권한을 부여했습니다. 그리고 웹 서버에는 두 가지 권한이 있습니다:
sudo find . -type f -exec chmod 664 {} \; sudo find . -type d -exec chmod 775 {} \;
그런 다음 웹 서버에 저장하고 캐시하기 위한 읽기 및 쓰기 권한을 부여했습니다.
어떻게 설정하든 웹 서버에 읽기 및 쓰기 권한을 부여해야 저장합니다. , 캐시 및 웹 사이트 서버가 상황에 따라 업로드하거나 작성해야 하는 기타 디렉토리이므로 다음 명령을 실행하십시오.
sudo chgrp -R www-data storage bootstrap/cache sudo chmod -R ug+rwx storage bootstrap/cache
이제 웹 사이트는 안전하며 이러한 파일을 쉽게 처리할 수 있습니다.
원본 주소 : https://stackoverflow.com/questions/30639174/how-to-set-up-file-permissions-for-laravel
번역 주소: https://learnku.com/laravel/t/62112
위 내용은 Laravel 디렉터리 권한을 설정하는 방법을 알고 계십니까? (두 가지 방법)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!