본문 바로가기

Nginx

Nginx static file 403 forbidden error # Nginx Static file을 못잡는 경우

728x90
반응형

실행환경:

AWS EC2 - Ubuntu22.04

 

문제상황:

EC2  환경에서 Nginx로 django의 static file이 읽어와지지 않는 오류를 마주했습니다.

static file들이 있는 경로에 접근을 못하는 403 error (permission denied)가 발생

 

원인 및 해결방안:

Nginx와 연결시키려는 WAS의 모든 경로는 +x 실행 권한을 줘야 한다.

 

EC2 첫 생성시 ubuntu 라는 username으로 시작

기본 $HOME 경로 -> /home/ubuntu

ls -l /home 명령어로 ubuntu의 실행권한을 보면 다음과 같이 되어있다.

/home/ubuntu 의 실행권한 x가 없다.

여기에 권한을 줘야 Nginx가 문제없이 접근 가능

 

내 django-project의 경로는 /home/ubuntu/django-project 이므로 각 경로의 디렉토리에 +x 권한을 준다

chmod +x /home
chmod +x /home/ubuntu
chmod +x /home/ubuntu/django-project

위와 같이 해서 실행할 app의 단계까지 +x 가 빠짐없이 있도록 하면 됨

 

EC2 생성의 경우 /home/ubuntu에만 x의 실행권한이 없는게 문제였으므로 아래 명령어만 해줘도 됨

chmod +x /home/ubuntu

 

참고:

https://ramk.co.in/nginx-opendir-failed-13-permission-denied/

https://stackoverflow.com/questions/25774999/nginx-stat-failed-13-permission-denied

728x90
반응형