网站ERR_CONNECTION_REFUSED报错排查流程总结(含教训警示)
一、问题概述
-
报错现象:访问目标网站提示"拒绝连接",报错代码ERR_CONNECTION_REFUSED
-
已知前提:域名未到期、能ping通服务器地址、宝塔已配置域名与端口映射,此前可正常访问
二、初步排查(排除基础环境问题)
2.1 服务器系统防火墙排查
-
执行命令ufw status,确认防火墙状态
-
排查结果:ufw处于inactive(关闭)状态,排除系统防火墙拦截问题
2.2 本地端口连通性测试
-
执行curl命令测试核心端口:curl 127.0.0.1(80端口)、curl 127.0.0.1:8080、curl 127.0.0.1:1239
-
排查结果:80、8080端口无法连接,1239端口可返回"Not Found"(确认项目服务正常运行)
三、核心问题定位(锁定Nginx服务异常)
3.1 检查Nginx运行状态
-
执行命令:systemctl status nginx
-
定位结果:Nginx处于failed(失败)状态,启动失败
3.2 排查Nginx启动失败原因
-
查看Nginx报错日志,核心错误:nginx: [emerg] host not found in upstream 目标代理地址
-
原因解析:Nginx配置文件中存在指向问卷星的反向代理,该代理地址无法解析,导致Nginx启动失败
-
关联问题:Nginx启动失败 → 80端口无服务监听 → 外网访问域名拒绝连接,服务器上所有网站均无法正常访问
四、问题修复步骤
4.1 修复Nginx错误配置(两种方法)
-
方法一:宝塔图形界面操作(适合不熟悉命令行)
-
登录宝塔面板 → 左侧"网站" → 找到对应站点 → 点击"设置" → "配置文件"
-
定位包含问卷星代理相关的配置行(报错提示对应行),删除或注释该配置(行首加#)
-
保存配置文件
方法二:命令行操作(快速高效)
- 执行命令删除错误配置文件:rm -f /www/server/panel/vhost/nginx/异常配置文件.conf
4.2 重启Nginx服务(两种方法)
-
方法一:宝塔图形界面操作
-
宝塔左侧"软件商店" → "已安装" → 找到"Nginx" → 点击"重启"
方法二:命令行操作
-
执行命令:systemctl start nginx(启动)或 systemctl restart nginx(重启)
-
备选命令:/etc/init.d/nginx restart
五、修复验证
-
验证Nginx运行状态:执行systemctl status nginx,确认显示"active (running)"
-
验证本地端口连通性:执行curl 127.0.0.1,确认能返回网页代码
-
验证外网访问:浏览器访问目标网站,确认能正常打开,服务器上所有网站恢复正常
六、问题总结与核心教训
6.1 问题总结
-
核心问题:Nginx配置中存在无效的问卷星反向代理(代理地址无法解析),导致Nginx启动失败,80端口无服务,进而引发服务器所有网站瘫痪
-
关键结论:域名能ping通≠服务正常,需重点检查Nginx运行状态及配置文件,任何无效配置都可能导致整体服务异常
6.2 核心教训(重点警示)
-
严禁在服务器线上环境的Nginx中配置问卷星代理相关内容,此类配置一旦出现异常(如代理地址无法解析、配置错误),会直接导致Nginx启动失败,进而造成服务器上所有网站瘫痪,影响全部业务正常运行。
-
后续若需进行问卷星代理相关操作,需搭建独立的测试环境,单独配置代理服务,与线上生产环境完全隔离,避免影响线上正常业务。
-
Nginx作为服务器核心web服务,其配置需谨慎操作,每次修改配置后,需先执行nginx -t命令检查配置正确性,确认无误后再重启Nginx,防止因配置错误引发服务瘫痪。