搭建lnmp完lnmp環(huán)境后,測試時(shí)出現(xiàn)502報(bào)錯,看到這個問題,我立刻想到是php-fpm沒有起來,但是我用 ps -ef | grep php-fpm 截取 php-fpm 的進(jìn)程,發(fā)現(xiàn)是有的,這時(shí)我有查看nginx的錯誤日志,發(fā)現(xiàn)錯誤信息是:
2017/05/05 17:08:45 [crit] 3258#0: *2 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.88.1, server: 192.168.88.133, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "192.168.88.134"

備注:php我用的版本是7.1.4的,最新的版本,之前用5.6版本的時(shí)候沒有出現(xiàn)過這個問題
思路:發(fā)現(xiàn)php-fpm的listen是unix sock方式運(yùn)行的,問題可能出在php-fpm上。既然沒有這個文件,就先把文件創(chuàng)建出來
1、創(chuàng)建這個文件,并賦予權(quán)限,因?yàn)槲以诰幾g的時(shí)候是用www用戶,所以將/tmp/php-cgi.sock的屬主和屬組都授權(quán)為www
touch /tmp/php-cgi.sock
chown www.www /tmp/php-cgi.sock
重啟ngix和php-fpm發(fā)現(xiàn)還是502的問題
2、我在網(wǎng)上也查看了下,說是其中
fastcgi_pass為配置nginx與php-fpm的交互路徑,一般有兩種方式
sock方式:fastcgi_pass unix:/tmp/php-cgi.sock;
http方式:fastcgi_pass 127.0.0.1:9000;
任選其中一種即可,但必須和php-fpm的配置一致。
后來我就在nginx的配置文件中加上一下代碼
location ~\.php$ {
root /root/wwwroot;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
3、同時(shí)修改php-fpm的配置文件php-fpm.conf,將listen = 127.0.0.1:9000改為
listen = /tmp/php-cgi.sock
#這個是設(shè)置 /tmp/php-cgi.sock 權(quán)限用的
listen.owner = www
listen.group = www
listen.mode = 0660

再次重啟ngix和php-fpm,問題解決

總結(jié):
1、其實(shí)這個問題總體就是nginx與php-fpm的交互問題,看我們選擇是sock方式還是http方式,但是不管選擇哪一種,我們都需要統(tǒng)一
2、我在網(wǎng)上看到有人說將max_children 進(jìn)程改大,其實(shí)這種情況我之前遇到過,它適用于本來php運(yùn)行正常,突然出現(xiàn)502的問題,這個問題是php-fpm隊(duì)列滿了,出現(xiàn)連接拒絕的錯誤。如果有問題,可以參考我的博客:http://blog.csdn.net/m0_37886429/article/details/70048754
3、還有人說將php-fpm配置文件里有backlog,backlog是linux服務(wù)器在socket處理連接數(shù)的定義,phpfpm默認(rèn)為-1,將-1改為4096,重啟php-fpm問題。
4、其實(shí)我們不管選擇哪一種,主要是針對自己的問題,先要看報(bào)錯,然后再對癥下藥,不要這一種試試那一種試試。
以上就是php-fpm報(bào)502問題的解決辦法的詳細(xì)內(nèi)容,更多關(guān)于php-fpm報(bào)502問題的資料請關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:- 詳解各種PHP函數(shù)漏洞
- 如何使用SublimeText3配置 PHP IDE環(huán)境
- PHPStorm+Xdebug進(jìn)行emote Debug時(shí)無法進(jìn)入斷點(diǎn)問題排查
- php中foreach遍歷類對象的總結(jié)
- PHP實(shí)現(xiàn)創(chuàng)建以太坊錢包轉(zhuǎn)賬等功能
- 如何使用php生成zip壓縮包
- 詳解PHP使用非對稱加密算法RSA
- php常見的網(wǎng)絡(luò)攻擊及防御方法
- PHP7下安裝并使用xhprof性能分析工具
- PHP遠(yuǎn)程調(diào)用以及RPC框架
- PHP代碼加密和擴(kuò)展解密實(shí)戰(zhàn)
- 再談PHP未來之路