Nginx는 트래픽이 많은 웹사이트와 애플리케이션에서 널리 사용되는 웹 서버이자 역방향 프록시 서버입니다. 그러나 Nginx를 사용하다 보면 가끔 PHP 오류가 발생할 수 있습니다. 이 기사에서는 PHP 오류가 발생하는 이유와 이 문제를 해결하는 방법을 소개합니다.
1. 문제의 존재
Nginx에서 PHP 인터프리터를 사용하려면 PHP-CGI를 Nginx에 바인딩해야 합니다. PHP-CGI와 Nginx 간의 상호 작용은 FastCGI 프로토콜을 사용하여 달성할 수 있습니다. 정상적으로 구성된 대로 Nginx는 PHP-CGI의 출력을 임시 파일에 쓴 다음 파일 시스템을 통해 파일을 전송합니다. 오류는 Nginx의 오류 로그에 기록되어 프런트엔드 사용자에게 전송됩니다.
Nginx에는 PHP 모듈이 내장되어 있지 않기 때문에 PHP-CGI가 올바르게 구성되지 않으면 PHP 오류가 제대로 표시되지 않을 수 있습니다.
2. 오류 보고 이유
PHP에서 오류를 보고하면 Nginx는 기본적으로 HTTP 상태 코드 502 Bad Gateway를 표시합니다. 이는 다음과 같은 이유 때문일 수 있습니다:
3.해결책
PHP 오류 문제를 올바르게 해결하려면 원인을 찾아 올바른 해결 방법을 찾아야 합니다.
PHP-CGI 프로세스가 실행 중인지 확인하려면 다음 명령을 사용하면 됩니다.
ps aux | grep php
출력이 없으면 PHP-CGI가 실행되지 않음을 의미합니다. 달리기. PHP-CGI를 다시 시작해야 하는 경우 다음 명령을 사용할 수 있습니다.
/etc/init.d/php-fpm restart
PHP-CGI 프로세스가 Nginx와 올바르게 통신하는지 확인하려면 다음이 필요합니다. Nginx 구성 파일에서 다음을 확인합니다. 구성:
location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }
fastcgi_pass
여기서는 PHP-CGI 프로세스의 주소와 포트를 지정합니다. 주소와 포트가 올바르지 않거나 시작되지 않으면 Nginx가 통신할 수 없습니다. PHP-CGI 프로세스를 사용합니다. fastcgi_pass
指定了 PHP-CGI 进程的地址和端口,如果不正确或未启动,则会导致 Nginx 无法与 PHP-CGI 进程通信。
要检查 PHP-CGI 配置是否正确,可以打开 PHP 配置文件,例如 /etc/php5/cgi/php.ini
,并确保以下设置正确:
display_errors = On error_reporting = E_ALL & ~E_NOTICE
这些设置将启用 PHP 的错误显示和错误报告功能。
要确保 Nginx 配置文件正确,您需要打开 Nginx 配置文件,例如 /etc/nginx/nginx.conf
PHP-CGI 구성이 올바른지 확인하려면 /etc/php5/cgi/php와 같은 PHP 구성 파일을 열면 됩니다. .ini
를 클릭하고 다음 설정이 올바른지 확인하세요.
error_log /var/log/nginx/error.log;
이 설정을 사용하면 PHP의 오류 표시 및 오류 보고 기능이 활성화됩니다.
/etc/nginx/nginx.conf와 같은 Nginx 구성 파일을 열어야 합니다. code>를 입력하고 다음이 올바르게 설정되었는지 확인하세요. 🎜rrreee🎜이 설정은 Nginx의 오류 로깅 기능을 활성화하여 오류를 찾고 디버깅하는 데 도움이 됩니다. 🎜🎜결론🎜🎜 PHP 오류는 Nginx를 사용할 때 흔히 발생하는 문제이지만 해결하기도 쉽습니다. PHP-CGI 프로세스가 실행 중이고 Nginx와 올바르게 통신하는지, PHP와 Nginx가 올바르게 구성되었는지 확인하세요. 이러한 간단한 단계를 통해 PHP 오류 문제를 쉽게 해결하고 서버가 제대로 실행되는지 확인할 수 있습니다. 🎜
위 내용은 nginx에서 PHP 오류 보고를 활성화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!