問題:
1、Nginx報異常502錯誤碼
2、Nginx的log異常信息
|
原因:
百度到的問題:http://www.nginx.cn/102.html都未能解決. 總之確認的問題是 nginx和fastcgi通信問題.
解決:
重啓未解決,並且未做任何改動.TCP的這種鏈接方式依然不通,導致nginx訪問請求還是502.
最後換了個思路解決:不使用TCP使用Socket與FastCGI通信
實施:
- 修改nginx的配置/usr/local/nginx/conf/nginx.conf
#fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/etc/php-fpm.d/php-fcgi.sock; -
創建socket文件,權限777
touch /etc/php-fpm.d/php-fcgi.sock
chmod 777 /etc/php-fpm.d/php-fcgi.sock -
修改fpm的配置
#listen = 127.0.0.1:9000
listen = /etc/php-fpm.d/php-fcgi.sock
啓動:
先重啓fpm:/etc/init.d/php-fpm restart
接着重啓nginx -s reload
ll /etc/php-fpm.d/php-fcgi.sock 查看此文件就會變成S文件(socket文件)
概念補充:
1、PHP-FPM(FastCGI Process Manager:FastCGI進程管理器)是一個PHPFastCGI管理器.
2、CGI就是webserver和程序解釋器的橋