로컬 가상 머신에 yum을 통해 nginx를 설치했는데, 접속해보니 403이 나오네요. 그래서 nginx 로그를 확인해 보니 경로는 /var/log 입니다. /nginx/error.log. 로그를 열고 Permission failed 오류를 찾으세요. 자세한 오류는 다음과 같습니다:
1. open() "/data/www/1.txt" failed (13: Permission failed), 클라이언트: 192.168.1.194, 서버: www.web1.com, 요청: "GET /1.txt HTTP/1.1", 호스트: "www.web1.com"
권한이 없나요? 그래서 많은 정보를 찾았고 다음 4가지 단계를 통해 이 문제를 해결할 수 있습니다. 이전 구성에 문제가 있을 수도 있고 반드시 네 단계를 모두 사용하지 않을 수도 있습니다.
1. 시작 사용자와 nginx 작업 사용자 사이의 불일치로 인해1.1 nginx의 시작 사용자를 확인하고 아무도 아니지만 root로 시작되었음을 확인합니다
명령: ps aux | grep "nginx : 작업자 프로세스" | awk'{print $1}'
1.2 nginx.config 사용자를 시작 사용자와 동일하게 변경합니다.
명령: vi conf/nginx.conf
2. index.html 또는 index.php 파일이 누락되었습니다. 이는 구성 파일의 index index.html index.htm 줄에 지정된 파일입니다.
1.서버 {
3.server_name localhost;
4.index.php index.html;
5.
/data/www/에 index.php나 index.html이 없을 경우, 파일을 직접 제출하시면 403forbidden이 리포트 됩니다.3. 권한 문제. nginx에 웹 디렉터리를 작동할 수 있는 권한이 없으면 403 오류도 발생합니다.
해결 방법: 웹 디렉터리의 읽기 및 쓰기 권한을 수정하거나 nginx의 시작 사용자를 디렉터리의 사용자로 변경하고 Nginx를 다시 시작하여 문제를 해결하세요1 chmod -R 777 /data
2.chmod -R 777 /data/www/
4. SELinux가 개방형(활성화) 상태로 설정된 이유.
4.1. selinux의 현재 상태를 확인하세요.
1. /usr/sbin/sestatus
4.2. SELINUX=enforcing을 SELINUX=disabled 상태로 변경합니다.
1.vi /etc/selinux/config
2.
3. #SELINUX=enforcing
4.SELINUX=disabled
4.3. 재부팅.
1. 재부팅
더 많은 Nginx 관련 기술 기사를 보려면 Nginx 튜토리얼 컬럼을 방문하여 알아보세요!
위 내용은 nginx 403을 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!