nginx 의 403 Forbidden 해결 방법 (권한 파일 과 파일 이 존재 하지 않 습 니 다. SElinux 가 열 립 니 다)

3745 단어 nigix
nginx 설정 이 완료 되 었 습 니 다. 403 Forbidden 이 나타 난 이 유 는 두 가지 가 있 습 니 다. 1. nginx 는 디 렉 터 리 에 접근 할 수 있 는 권한 이 없습니다.2. nginx 디 렉 터 리 에는 기본 문서 가 없고 디 렉 터 리 를 표시 할 수 있 는 권한 이 없습니다.
nginx 를 시작 하여 웹 사 이 트 를 방문 한 후 나타 납 니 다.
403 Forbidden
1. 권한 문제
이것 이 바로 권한 의 문제 입 니 다. nginx 가 설정 한 디 렉 터 리 에 권한 이 있 음 을 보증 해 야 합 니 다.  우선, 설정 한 디 렉 터 리 를 살 펴 보 겠 습 니 다. 다음 글 에서 {nginx} 은 nginx 설치 경 로 를 표시 합 니 다.
vi {nginx}/conf/nginx.conf
  • 1
  • 1

  • 그리고 이 단락 을 찾 습 니 다.
    server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   /home/xxx/website/nginxweb;
                index  index.html index.htm;
            }
         }
    
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

  • 루트 / home / xxx / website / nginxweb;디 렉 터 리 입 니 다. index 는 기본 문서 입 니 다.
    우 리 는 이 디 렉 터 리 에 가서 당신 이 어떤 권한 인지 보 겠 습 니 다. 이것 은 말 하지 않 겠 습 니 다.
    그리고 우리 의 nginx 가 어떤 권한 인지 봅 시다.
    nobody   31222 31159  0 22:52 ?        00:00:00 nginx: worker process
  • 1
  • 1

  • nobody 사용자 가 실행 하 는 것 을 볼 수 있 습 니 다. 따라서 권한 이 있 는 사용자 나 디 렉 터 리 를 수정 할 수 있 는 권한 으로 수정 해 야 합 니 다. nginx 가 실행 하 는 사용 자 를 수정 하 겠 습 니 다.
    (nginx 곶 / conf / nginx. conf 앞 에 한 마디 추가:
    user xxx;
  • 1
  • 1

  • 면 됩 니 다. 그 중에서 xxx 는 nginx 를 실행 하 는 사용자 입 니 다.
    2. 목록 에 없 음
    위 에 있 는 것 을 완 료 했 습 니 다. 접근 에 오류 가 발생 했 습 니 다. 디 렉 터 리 에 파일 이 없고 디 렉 터 리 를 표시 할 수 있 는 권한 이 없 을 수도 있 습 니 다.  / home / xxx / website / nginxweb 폴 더 에 기본 파일 이 설정 되 어 있 는 지 확인 하 십시오. 기본 파일 은 nginx. conf 에 있 는 index 입 니 다. 위 에 소개 되 어 있 습 니 다.
    해결 방법, 당신 의 / home / xxx / website / nginxweb 폴 더 에 index. html 파일 을 만들어 보 세 요.
    3. SElinux 오픈
    SELinux        


    1. SELinux 상태 명령 보기:
    1、/usr/sbin/sestatus -v      ##SELinux status 파라미터 가 enabled 이면 오픈 상태 SELinux status 입 니 다.                 enabled
    2、getenforce                 ##이 명령 으로 검사 할 수도 있 습 니 다.
    2. SELinux 를 닫 는 방법:
    1. 임시 종료 (기 계 를 다시 시작 하지 않 아 도 됨):
    코드 는 다음 과 같 습 니 다:
    setenforce 0 \ # SELinux 를 permissive 모드 로 설정 합 니 다.
    \ # setenforce 1 은 SELinux 를 enforcing 모드 로 설정 합 니 다.
    2. 설정 파일 을 수정 하려 면 기 계 를 다시 시작 해 야 합 니 다.
    / etc / selinux / config 파일 수정
    SELINUX = enforcing 을 SELINUX = disabled 로 변경
    기 계 를 다시 켜 면 됩 니 다.

    좋은 웹페이지 즐겨찾기