欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

服務(wù)器報錯nginx?502?Bad?Gateway的原因及如何解決詳解

 更新時間:2023年06月01日 09:32:33   作者:主題模板站  
項目啟動時莫名其妙網(wǎng)站訪問不了,502 Bad Gateway,下面這篇文章主要給大家介紹了關(guān)于服務(wù)器報錯nginx?502?Bad?Gateway的原因及如何解決的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

網(wǎng)站頁面出現(xiàn)502badgateway怎么辦?今天我們來分析一下原因和解決辦法。

一、nginx 502 Bad Gateway出現(xiàn)的原因:

nginx出現(xiàn)502多數(shù)是屬于后端的問題,后期就是PHP的問題,在php服務(wù)當(dāng)中,有兩個參數(shù)非常的重要:max_requestst 和max_children;具體的原因必須要查看日志才可以弄明白!

1:FastCGI進程是否已經(jīng)啟動

ps aux|grep php

查看是否啟動了php-fpm服務(wù);

2:FastCGI worker進程數(shù)是否不夠

運行l(wèi)inux命令:

netstat -anpo | grep “php-cgi” | wc -l

判斷是否接近FastCGI進程,接近配置文件中設(shè)置的數(shù)值,表明worker進程數(shù)設(shè)置太少;

3.FastCGI執(zhí)行時間過長

根據(jù)實際情況調(diào)高以下參數(shù)值

fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

4:FastCGI Buffer不夠

nginx和apache一樣,有前端緩沖限制,可以調(diào)整緩沖參數(shù)

fastcgi_buffer_size 32k;
fastcgi_buffers 8 32k;

5:其它原因

出現(xiàn)502的情況太多了,(例如:你服務(wù)器目前的配置支撐不了你現(xiàn)有的業(yè)務(wù)。我有一個朋友服務(wù)器是4核8G的,經(jīng)常一會出現(xiàn)502 Bad Gatewa,又一會正常。CPU和內(nèi)存經(jīng)常爆滿接近100%,負載也接近4。最后,配置升級成8核16G后變就變正常了。)遠遠不只是博主所說的這幾種!這幾種只能說是最常用的吧!具體的原因一定要去查看服務(wù)器的日志;

如何通過查看日志來解決502 Bad Gateway?

二、nginx 502 bad gateway問題怎么解決?

1:查看nginx日志

既然是nginx報錯,首先我們就去查看nginx的日志;執(zhí)行如下命令:

vim /fujieace/nginx/logs/error.log

日志沒有報什么錯,一切正常,顯然不是nginx出的問題;

2:查看php日志

或許不同的環(huán)境,路徑或許不一同,但是很類似,繼續(xù)執(zhí)行l(wèi)inux命令:

vim /fujieace/php/var/log/php-fpm.log

結(jié)果發(fā)現(xiàn)有很多:如下圖

WARNING: [pool www] server reached pm.max_children setting (5), consider raising it;

翻譯過來就是:

警告:[池WWW服務(wù)器達到pm.max_children設(shè)置](5),考慮提高它

我們只需要修改”pm.max_children” 參數(shù)即可!

說明:

pm.max_children = 30 //設(shè)置子進程最大數(shù)值

舉例:

每個php-fpm子進程占用20M內(nèi)存,服務(wù)器的內(nèi)存是1G,除去系統(tǒng)中其他應(yīng)用占用的內(nèi)存。

假如系統(tǒng)為300M,剩余700M,700/20 = 35,最多設(shè)置35,可以取值稍微低一些為30。

與此同時我們還要調(diào)整以下參數(shù)

pm.start_servers = 10 //php-fpm啟動起始進程數(shù)
pm.min_spare_servers = 10 //動態(tài)php-fpm的最小空閑進程數(shù)
pm.max_spare_servers = 24 //動態(tài)php-fpm的最大空閑進程數(shù)
pm.max_requests = 500 //所有子進程重啟時間

舉例:

所有子進程重啟時間為300s一次,并發(fā)量為50,max_children設(shè)置為30;

max_requests = 300*50/30=500;

如果想讓進程每隔一小時重生一次,則是3600*50/30=6000。

解決辦法:

修改pm.max_children參數(shù)具體操作步驟:

如果你是用的一鍵安裝包,請按以下步驟操作:

1、執(zhí)行vim命令

vim /usr/local/php/etc/php-fpm.conf
pm.max_children = 5

直接修改為

pm.max_children = 20

提示:20這個值僅做參考,可以繼續(xù)增加,具體的話請根據(jù)自己的服務(wù)器配置來設(shè)置;請按照上面的計算方法來設(shè)置;并不是越大越好!只要配置后不再報錯就OK!

lnmp一鍵安裝包,如果博主沒記錯,默認(rèn)的是pm.max_children = 10;

2、保存退出并重啟php-fpm;

pkill -9 php //殺掉php進程
./sbin/php-fpm //重啟php服務(wù)

如果你是用的手工源碼安裝php;修改pm.max_children它的路徑卻不一樣;

網(wǎng)站來舉例:

vim /fujieace/php/etc/php-fpm.d/fujieace.conf

fujieace.conf是我重名命過的,你安裝的時候是修改成什么樣子就是什么樣子,默認(rèn)修改的是www.conf;

其它的也沒什么不同,和上面操作都是一樣的;主要的是要找到php-fpm的配置文件,并修改它的最大子進程個數(shù);

總結(jié)

到此這篇關(guān)于服務(wù)器報錯nginx 502 Bad Gateway的原因及如何解決的文章就介紹到這了,更多相關(guān)服務(wù)器報錯nginx 502 Bad Gateway內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • filebeat收集多個域名網(wǎng)站日志并存儲到不同es索引庫過程

    filebeat收集多個域名網(wǎng)站日志并存儲到不同es索引庫過程

    這篇文章主要為大家介紹了filebeat收集多個域名網(wǎng)站日志并存儲到不同es索引庫過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • Nginx正向反向代理區(qū)別及原理解析

    Nginx正向反向代理區(qū)別及原理解析

    這篇文章主要介紹了Nginx正向反向代理區(qū)別及原理解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • Nginx下將http改為https的操作步驟

    Nginx下將http改為https的操作步驟

    HTTPS是HTTP協(xié)議的安全版本,通過使用SSL(安全套接層)或TLS(傳輸層安全)協(xié)議加密通信,為數(shù)據(jù)傳輸提供了保密性、完整性和身份認(rèn)證,本文給大家介紹了Nginx下將http改為https的操作方法,需要的朋友可以參考下
    2024-08-08
  • Nginx下SSL證書安裝部署步驟介紹

    Nginx下SSL證書安裝部署步驟介紹

    大家好,本篇文章主要講的是Nginx下SSL證書安裝部署步驟介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下哦,方便下次瀏覽
    2021-12-12
  • nginx代理的緩存配置

    nginx代理的緩存配置

    代理緩存能夠有效提高網(wǎng)站訪問速度和服務(wù)器性能,本文詳細介紹了使用nginx的ngx_http_proxy_module模塊配置代理緩存,包括設(shè)置緩存路徑、配置代理服務(wù)等,感興趣的可以了解一下
    2024-09-09
  • 通過Nginx配置實現(xiàn)外網(wǎng)訪問內(nèi)網(wǎng)數(shù)據(jù)庫的操作指南

    通過Nginx配置實現(xiàn)外網(wǎng)訪問內(nèi)網(wǎng)數(shù)據(jù)庫的操作指南

    項目開發(fā)部署中經(jīng)常會遇到MySQL或Oracle數(shù)據(jù)庫安裝在內(nèi)網(wǎng),而我們的應(yīng)用服務(wù)只能部署在外網(wǎng),如果實現(xiàn)外網(wǎng)服務(wù)訪問連接內(nèi)網(wǎng)的數(shù)據(jù)庫呢?本次介紹如何通過Nginx配置實現(xiàn)外網(wǎng)訪問內(nèi)網(wǎng)數(shù)據(jù)庫,需要的朋友可以參考下
    2023-10-10
  • Nginx Lua 根據(jù)參數(shù)請求轉(zhuǎn)發(fā)的實現(xiàn)

    Nginx Lua 根據(jù)參數(shù)請求轉(zhuǎn)發(fā)的實現(xiàn)

    本文介紹了如何使用Nginx和Lua腳本實現(xiàn)基于參數(shù)的請求轉(zhuǎn)發(fā),文章詳細說明了配置方法,并提供了示例代碼,幫助讀者理解如何通過NginxLua模塊根據(jù)請求參數(shù)將流量轉(zhuǎn)發(fā)到不同后端服務(wù),這種方法有助于實現(xiàn)靈活的負載均衡和動態(tài)內(nèi)容處理
    2022-05-05
  • 在ubuntu下為nginx配置支持cgi腳本的方案

    在ubuntu下為nginx配置支持cgi腳本的方案

    本文的需求:讓nginx能夠解析.cgi后綴的文件,相信會特意看這篇文章的人對CGI是什么及其作用已經(jīng)有了足夠的了解,所以在這里不再贅述,直接開始配置。
    2017-02-02
  • nginx的zabbix 5.0安裝部署的方法步驟

    nginx的zabbix 5.0安裝部署的方法步驟

    之前大家可能經(jīng)常會基于apache去部署zabbix,但是這樣會偶爾遇到一些問題,今天小編就帶大家操作一下基于nginx的zabbix5.0的部署。感興趣的可以了解一下
    2021-07-07
  • nginx服務(wù)器異常502 bad gateway原因排查

    nginx服務(wù)器異常502 bad gateway原因排查

    這篇文章主要介紹了nginx服務(wù)器異常502 bad gateway原因排查,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08

最新評論