嗯哼,剛裝了個ubuntu的lnmp,我的天啊,踩的坑比我脂肪還多了
比如剛裝完的時候訪問顯示502,

也不知道什么問題,就去看了一下nginx日志 /var/log/nginx/error.log,發現了這個錯誤
2018/06/03 13:38:23 [error] 21332#21332: *301 connect() failed (111: Connection refused) while connecting to upstream, client: 115.159.183.71, server: 202.182.116.84, request: "GET /phpmyadmin/index.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "202.182.116.84"
去搜了一下,這樣的錯誤有兩個解決方式
1.php-fpm沒有運行
執行如下命令查看是否啟動了php-fpm,如果沒有則啟動你的php-fpm即可
netstat -ant | grep 9000
2.php-fpm隊列滿了
php-fpm.conf(/etc/php/7.0/fpm/php-fpm.conf)配置文件pm.max_children修改大一點,重啟php-fpm並觀察日志情況
呵呵,但是呢,姐姐豈止是普通人,這兩個都看了還是不行,解決完了才發現,沒想到啊,自己竟然有一個這么大的錯誤
來啊從配置文件開始看起吧,
3、修改配置文件
因為nginx和php有兩種鏈接方式,一種是
fastcgi_pass 127.0.0.1:9000;
另一種是這個
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
這個具體怎么用要去php fpm里面去看他的配置文件
/etc/php/7.0/fpm/pool.d/www.conf里面的Listen
如果Listen是端口就寫127.0.0.1:9000;
如果是路徑,nginx的配置文件也要學路徑,unix:/run/php/php7.0-fpm.sock;

重新訪問就好了

所以說修改一下配置文件,在重啟一下nginx,就好了。其實按理說不能發生這種事的,但是呢?自己搭的時候,幾乎所有的事都有可能發生。記錄下來,以防再次入坑。
