nginx 502 解決記錄(php-fpm 啟動失敗)
阿新 • • 發佈:2019-02-18
安裝 macOS 10.13
之後發現 nginx
產生了 502 錯誤
,具體解決方式記錄如下:
開啟 nginx error log
注:
此處 nginx 使用的是 brew 安裝的 nginx ,使用其他工具或不同時間安裝的 nginx ,在檢視 nginx error log 時具體操作可能不同。
我的nginx
預設並沒有開啟 error log
,編輯 nginx.conf
,開啟error log
error_log logs/error.log;
此時,執行一下sudo nginx
會在/usr/local/Cellar/nginx/1.12.0_1/logs
下產生error.log
開啟 error log 發現錯誤資訊如下:
[error] 1676#0: *1 kevent() reported that connect() failed (61: Connection refused) while connecting to upstream, client: 127.0.0.1, server: www, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www"
檢查php-fpm
執行sudo php-fpm
報錯如下:
[30-Aug-2017 14:33:37 ] ERROR: failed to open configuration file '/private/etc/php-fpm.conf': No such file or directory (2)
[30-Aug-2017 14:33:37] ERROR: failed to load configuration file '/private/etc/php-fpm.conf'
[30-Aug-2017 14:33:37] ERROR: FPM initialization failed
確定原因為php-fpm
配置檔案丟失
在/private/etc/
找到了php-fpm
的預設配置檔案/private/etc/php-fpm.comf.default
複製,新建一份配置檔案:
sudo cp /private/etc/php-fpm.comf.default /private/etc/php-fpm.conf
再次執行sudo php-fpm
報錯如下
/private/etc/php-fpm.conf
[30-Aug-2017 15:19:50] WARNING: Nothing matches the include pattern '/private/etc/php-fpm.d/*.conf' from /private/etc/php-fpm.conf at line 125.
[30-Aug-2017 15:19:50] ERROR: failed to open error_log (/usr/var/log/php-fpm.log): No such file or directory (2)
[30-Aug-2017 15:19:50] ERROR: failed to post process the configuration
[30-Aug-2017 15:19:50] ERROR: FPM initialization failed
進入/private/etc/php-fpm.d
,複製新建一份配置檔案:
sudo cp /private/etc/php-fpm.d/www.conf.default /private/etc/php-fpm.d/www.conf
修改 php-fpm log
預設儲存位置
編輯sudo vim /private/etc/php-fpm.conf
error_log = /usr/local/var/log/php-fpm.log
再次執行sudo php-fpm
,無錯誤提示。
重新啟動 nginx
:
sudo nginx -s stop
sudo nginx
發現502錯誤
已解決