php-fpm報502問題的解決辦法
搭建lnmp完lnmp環(huán)境后,測試時出現(xiàn)502報錯,看到這個問題,我立刻想到是php-fpm沒有起來,但是我用 ps -ef | grep php-fpm 截取 php-fpm 的進程,發(fā)現(xiàn)是有的,這時我有查看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版本的時候沒有出現(xiàn)過這個問題
思路:發(fā)現(xiàn)php-fpm的listen是unix sock方式運行的,問題可能出在php-fpm上。既然沒有這個文件,就先把文件創(chuàng)建出來
1、創(chuàng)建這個文件,并賦予權(quán)限,因為我在編譯的時候是用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、同時修改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、其實這個問題總體就是nginx與php-fpm的交互問題,看我們選擇是sock方式還是http方式,但是不管選擇哪一種,我們都需要統(tǒng)一
2、我在網(wǎng)上看到有人說將max_children 進程改大,其實這種情況我之前遇到過,它適用于本來php運行正常,突然出現(xiàn)502的問題,這個問題是php-fpm隊列滿了,出現(xiàn)連接拒絕的錯誤。如果有問題,可以參考我的博客:http://blog.csdn.net/m0_37886429/article/details/70048754
3、還有人說將php-fpm配置文件里有backlog,backlog是linux服務(wù)器在socket處理連接數(shù)的定義,phpfpm默認為-1,將-1改為4096,重啟php-fpm問題。
4、其實我們不管選擇哪一種,主要是針對自己的問題,先要看報錯,然后再對癥下藥,不要這一種試試那一種試試。
以上就是php-fpm報502問題的解決辦法的詳細內(nèi)容,更多關(guān)于php-fpm報502問題的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法分析
這篇文章主要介紹了PHP cookie,session的使用與用戶自動登錄功能實現(xiàn)方法,結(jié)合實例形式分析了php使用cookie與session進行數(shù)據(jù)存取以及實現(xiàn)自動登陸功能的相關(guān)操作技巧,需要的朋友可以參考下2019-06-06淺談PHP的排列組合(如輸入a,b,c 輸出他們的全部組合)
下面小編就為大家?guī)硪黄獪\談PHP的排列組合(如輸入a,b,c 輸出他們的全部組合)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03PHP實現(xiàn)根據(jù)圖片色界在不同位置加水印的方法
這篇文章主要介紹了PHP實現(xiàn)根據(jù)圖片色界在不同位置加水印的方法,涉及php使用MagickWand模塊操作圖片添加水印的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下2015-08-08