centos 7 상 nginx 오류, open () "test. min. css" failed (13: Permission denied
1493 단어 nginxcentosPermissionselinuxdeny
Kernal: 3.10.0-327.el7.x86_64
django 및 해당 nginx 역방향 대 리 를 설정 한 후
웹 이 열 려 서 정적 파일 을 찾 을 수 없 음 을 발 견 했 습 니 다. nginx 로그 보고 permission denied, 검사 과정 은 다음 과 같 습 니 다.
1. 검사 / var / www / static 디 렉 터 리 의 소유자 와 권한, 소유자 가 www (nginx worker 가 www 사용자 로 시작) 이 아 닌 것 을 발견 하면 권한 이 정확 합 니 다.
chown -R www.www /var/www/static
수정 후에 도 정적 파일 이 없 음 을 발견 하 였 습 니 다.
2. 어 쩔 수 없어 요. 구 글, stackoverflow 를 발견 하면 다음 과 같이 대답 합 니 다.
24
down vote
I've just had the same problem on a CentOS 7 box.
Seems I'd hit selinux. Putting selinux into permissive mode (
setenforce permissive
) has worked round the problem for now. I'll try and get back with a proper fix. 명령 행 에서 명령 을 실행 한 setenforce permissive 후 리 셋 복구
이런 방법 은 단지 selinux 의 안전 등급 을 낮 추 었 을 뿐, 어떻게 철저하게 해결 하 는 지 에 대해 서 는 아직 연구 하고 있다.
보충:
끊 임 없 는 구 글 + 각종 키 워드 를 통 해 철저한 해결 방법 을 찾 았 습 니 다.
1. audit. log 에 대한 분석 도구 모음 설치
yum install setroubleshoot
2. 접근 가능 한 화이트 리스트 생 성
cat /var/log/audit/audit.log| grep nginx |audit2allow -M mynginx
3. 화이트 리스트 적용
semodule -i mynginx.pp
4. selinux 기본 기능 복원
setenforce enforcing
페이지 새로 고침, 정적 파일 정상, 문제 해결
selinux 의 소 개 를 동봉 합 니 다:
SELinux (Security - Enhanced Linux) 는 미국 국가 안전 국 (NSA) 이 강제 방문 통제 에 대한 실현 으로 Linux 역사상 가장 뛰어난 새로운 안전 서브 시스템 이다.NSA 는 Linux 커 뮤 니 티 의 도움 을 받 아 방문 통제 체 계 를 개 발 했 습 니 다. 이러한 방문 통제 시스템 의 제한 하에 프로 세 스 는 그의 작업 에 필요 한 파일 만 방문 할 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.