今天千鋒扣丁學堂Linux培訓老師給你們介紹一下關於詳解linux中Nginx常見502錯誤問題解決辦法的詳細介紹,下面咱們一塊兒來看一下吧。php
Nginx502錯誤狀況1:前端
網站的訪問量大,而php-cgi的進程數偏少。linux
針對這種狀況的502錯誤,只需增長php-cgi的進程數。具體就是修改/usr/local/php/etc/php-fpm.conf文件,將其中的max_children值適當增長。這個數據要依據你的VPS或獨立服務器的配置進行設置。通常一個php-cgi進程佔20M內存,你能夠本身計算下,適量增多。nginx
/usr/local/php/sbin/php-fpmrestart而後重啓一下.apache
Nginx502錯誤狀況2:服務器
CPU佔用率、內存佔用率很是高,遭到CC攻擊.微信
解決方法請參考:LinuxVPS簡單解決CC攻擊負載均衡
Nginx502錯誤狀況3:php-fpm
CPU佔用率不高,內存溢出。學習
檢查一下網站程序有沒有問題?通常小偷站點經常會出現內存溢出。
檢查一下/var/log/目錄下的日誌,看看是否是有人爆破SSH和FTP端口?
SSH、FTP遭到窮舉也會佔用大量內存。是的話改掉SSH端口和FTP端口便可
將網上找到的一些和502BadGateway錯誤有關的問題和排查方法列一下,先從FastCGI配置入手:
1.查看FastCGI進程是否已經啓動
NGINX502錯誤的含義是sock、端口沒被監聽形成的。咱們先檢查fastcgi是否在運行
2.檢查系統Fastcgi進程運行狀況
除了第一種狀況,fastcgi進程數不夠用、php執行時間長、或者是php-cgi進程死掉也可能形成nginx的502錯誤
運行如下命令判斷是否接近FastCGI進程,若是fastcgi進程數接近配置文件中設置的數值,代表worker進程數設置太少
netstat -anpo | grep "php-cgi" | wc -l
3.FastCGI執行時間過長
根據實際狀況調高如下參數值
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
4.頭部太大
nginx和apache同樣,有前端緩衝限制,能夠調整緩衝參數
fastcgi_buffer_size 32k;
fastcgi_buffers 8 32k;
若是你使用的是nginx的負載均衡Proxying,調整
proxy_buffer_size 16k;
proxy_buffers 4 16k;
5.https轉發配置錯誤
正確的配置方法
server_name www.jb51.net; location /myproj/repos
{
set $fixed_destination $http_destination;
if ( $http_destination ~* ^https(.*)$ )
{
set $fixed_destination http$1;
}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Destination $fixed_destination;
proxy_pass http://subversion_hosts;
}
以上就是關於千鋒扣丁學堂Linux培訓詳解Nginx常見502錯誤問題解決辦法的所有內容,但願對你們的學習有所幫助,想要了解更多關於Linux方面內容的小夥伴,請關注扣丁學堂Linux培訓官網、微信等平臺,扣丁學堂IT職業在線學習教育平臺爲您提供權威的Linux開發環境搭建視頻,Linux培訓後的前景無限,行業薪資和將來的發展會愈來愈好的,扣丁學堂老師精心推出的Linux視頻教程定能讓你快速掌握Linux從入門到精通開發實戰技能。