你刚打开网站后台,准备发个文章。
结果屏幕上一个大大的“502 Bad Gateway”。
是不是瞬间血压上来了?
这就好比你回家掏钥匙,结果锁眼堵了。
尤其是做Phpcms站长的,这错误太常见了。
别急着砸键盘,也别乱求人。
这篇文章就是来救急的。
我不讲那些听不懂的原理。
只教你具体怎么操作,怎么把网站弄回来。
只要你照着做,大概率能立马解决问题。
很多时候,502就是服务进程挂了。
或者是卡住了,没反应过来。
这时候你重启一下,通常就能好。
这就像电脑卡死,你重启试试一样。
Phpcms是跑在PHP环境里的。
这个环境叫PHP-FPM,它是个干活的工人。
工人罢工了,前台Nginx就报502。
你得去服务器后台敲命令。
如果你用的是宝塔面板,那就更简单。
直接点“软件商店”,找到PHP。
点“重载配置”或者“重启”。
如果是命令行,试试这个:
service php-fpm restart
或者:
systemctl restart php-fpm
敲完回车,再刷新网页看看。
好了吧?如果好了,那就是虚惊一场。
有时候重启也没用,过一会又挂。
那是因为你的服务器配置太低。
访问量一大,干活的进程不够用了。
新来的请求没工人接,就报502。
你得去改PHP的配置文件。
找到 php.ini 或者 www.conf。
一般在这个路径:/etc/php-fpm.d/www.conf
找个叫 pm.max_children 的值。
默认可能是5或者10。
如果你的内存只有1G,别改太大,会卡死。
改成 20或者 30 试试。
改完记得重启PHP-FPM。
这能解决并发一高就502的问题。
Phpcms是个老系统了,有时候挺吃资源的。
特别是生成全站HTML的时候。
如果服务器限制太死,它跑到一半就被系统“杀”了。
前端显示出来的就是502错误。
有些页面特别复杂,数据库查询慢。
PHP默认30秒没反应就超时。
这时间太短了,不够用。
你去修改 php.ini 文件。
找到 max_execution_time。
把默认的30改成 300。
也就是5分钟,这应该够了吧。
还要找 request_terminate_timeout。
这个值也要跟着改大一点。
不然脚本还没跑完就被掐断了。
这就好比干活需要桌子。
桌子太小,东西摆不下,活就干不成。
在 php.ini 里找 memory_limit。
默认可能是128M。
建议直接改成 256M 或者 512M。
当然,前提是你服务器总内存够大。
如果是那种512M的小水管服务器。
就别改太大了,不然整个系统都会崩。

这招能解决大部分因内存不足导致的502。
有时候不是程序的问题。
是Nginx和PHP-FPM这两哥们没对上暗号。
Nginx把活发出去,PHP没收到。
或者PHP发回消息,Nginx没听着。
你去看看Nginx的配置文件。
一般在 /etc/nginx/conf.d/ 下面。
找到你的网站配置文件。
看 location ~ \.php$ 这一块。
重点看 fastcgi_pass 这行。
这里写的地址,必须和PHP-FPM监听的一样。
比如Nginx里写的是 127.0.0.1:9000。
那PHP配置里 listen 也得是 127.0.0.1:9000。
如果不一致,肯定报502。
修改成一致,然后重载Nginx配置。
命令是:nginx -s reload。
如果Phpcms后台返回的数据特别大。
Nginx默认的缓冲区装不下。
它也会傻眼,扔给你一个502。
在Nginx配置里加这几行:
fastcgi_buffer_size 128k;
fastcgi_buffers 8 128k;
fastcgi_busy_buffers_size 256k;
把缓冲区开大点,路就宽了。
数据就能顺畅地传回来。
这个配置很隐蔽,很多人容易忽略。
Phpcms这系统,缓存有时候很坑。
缓存文件坏了,也会导致奇怪的错误。
虽然直接报502的情况少点。
但排除完上面的问题,还是得看它。
如果后台能进,前台502。
或者反过来。
试着进后台把缓存清了。
路径一般是:内容 -> 生成HTML -> 清理全部缓存。
如果后台进不去。
你就用FTP或者文件管理器。
找到 caches 文件夹。
把里面的子文件夹全删了。
别删 caches 这个大文件夹本身啊。
只删里面的内容。
系统会自动重新生成的。
这招能解决很多莫名其妙的错误。
别光靠猜,看日志最准。
Nginx的错误日志在这里:/var/log/nginx/error.log。
PHP的错误日志在 php.ini 里指定。
用 tail -f 命令实时看。
你刷新网页报错。
日志里就会蹦出具体的错误信息。
比如“Connection refused”或者“Primary script unknown”。
看到这些,你就知道具体是哪儿断了。
修起来就更有方向。
说了这么多,核心就那几点。
重启服务,调大资源,检查配置。
别看着502发呆,觉得天塌了。
这真不是什么绝症。
按照我给的顺序,一个一个试。
90%的情况都能搞定。
别去乱改系统核心文件。
只改配置,不伤筋动骨。
现在就打开你的终端。
先把PHP-FPM重启了再说。
祝你网站立马恢复生机!
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图