안녕하세요
Linux에 워드 프레스를 설치하면서 Nginx와 PHP를 연동하는 과정에서 다음과 같이 Primary script unknown 에러가 발생했습니다. 이 포스팅에서는 "Primary script unknown" 에러 발생 시 해결 방법에 대해 포스팅을 하고자 합니다.
1. 에러 발생 확인
다음과 같이 Nginx 설정에서 php-fpm을 이용하여 fastcgi_pass를 통해 IP 혹은 Socket 방식으로 정상적으로 설정했는데 다음과 같이 에러가 발생합니다.
404 Not Found도 아니고 File not found로 나오는 것을 확인할 수 있습니다.
다음과 같이 index.php를 추가한 후 Nginx와 php-fpm 서비스를 재시작했는데도 문제가 발생한 경우 다음과 같이 error_log에서 어떤 문제인지 확인해 줍니다.
/var/log/nginx/web.error.log를 확인해보니 FastCGI sent in stderr가 발생한 것을 확인할 수 있는데 response 부분을 확인해보니 upstream으로 127.0.0.1:9000이 표시되는 것을 확인해볼 수 있습니다. 이 경우 설정보다는 파일이나 디렉토리에 대한 권한을 의심해볼 수 있습니다.
2. 에러 해결
1. 파일 권한 확인
현재 워드프레스 관련 파일의 권한이 755로 들어가 있는 것을 확인할 수 있습니다.
2. 디렉토리 권한 확인
워드프레스 디렉토리 역시 권한이 755로 들어가 있는 것을 확인할 수 있습니다.
사용자 디렉토리의 권한에서 실행 권한이 빠져있는 것을 확인할 수 있는데 권한을 755로 수정합니다.
사용자 디렉토리의 권한 수정 후 file not found 에러가 해결된 것을 확인할 수 있습니다. 설정 진행한 후 에러가 발생했을 때는 반드시 로그를 확인해보는 습관을 가져야 할 것 같습니다.
이번 시간에는 Nginx-PHP 연동 과정 중 일어난 "file not found" 에러를 해결해봤습니다.
감사합니다.
'Trouble shooting' 카테고리의 다른 글
클라우드, 개발, 자격증, 취업 정보 등 IT 정보 공간
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!