- 背景:在開發(fā)服務(wù)器上,新建一個mysql5.7實例,然后上面的幾個php應(yīng)用就罷工了
- 原因:安裝時把centOS默認(rèn)的mysql服務(wù)卸載,導(dǎo)致php的mysql報錯,提示libmysqlclient找不到;
- 解決
- 原有php是5.3,2old,直接升級到php5.7,采用yum安裝;
- 編寫phpinfo.php,返回502錯誤;錯誤在 /var/log/nginx/error.log,疑似php-fpm工作異常;
- 修改php-fpm配置,啟動 catch_workers_output = yes,輸出錯誤日志到log 文件
- 重啟php-fpm,查看/var/log/php-fpm/www-error.log,提示ip不對
- 好像yum安裝的php-fpm只允許127.0.0.1訪問,修改allowed_clients
- 至此nginx+php打通
- 總結(jié)
- 在穩(wěn)定環(huán)境中修改配置,牽一發(fā)而動全身……隨便一弄就是雞飛狗跳;
- 對nginx的日志不夠熟悉,catch_workers_output = yes 是關(guān)鍵點;
- 環(huán)境一致性,還是Docker可靠;
// /var/log/error.log
[Nginx error *recv()* *failed* *(104:* *Connection* *reset* *by* *peer)*]
/var/log/php-fpm/www-error.log
[pool www] child 25840 said into stderr: "ERROR: Connection disallowed: IP address '10.0.0.2' has been dropped."