刚备份完网站数据,想着重新启动下服务器,然后就出现了网站打不开的情况,登录宝塔面板能打开。
在后台检查了下数据,发现没有被攻击后,看了下宝塔里的插件工具,发现nginx 无缘无关关闭了。
可是当我去重新启动的时候,发现启动不了,出现报错:
nginx: the configuration file /www/server/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /www/server/nginx/conf/nginx.conf test failed
可以根据经验判断,应该不是站点配置问题,由于Nginx没有启动而造成的问题,多次排查后发现导致这个情况产生的原因属实乌龙。
具体原因是Nginx防火墙与Nginx不兼容所导致的,知道了原因就有对应的办法,有两法均可解决此问题:
1、卸载Nginx免费防火墙,使用付费的Nginx防火墙。还有可能付费的防火墙使用到期,然后就出现错误,此时续费防火墙使用或卸载即可。
2、如果想继续使用Nginx免费防火墙,必须把Nginx版本切换为1.18,同样也能解决问题。(测试了这个方法,没有用,可能其他插件版本太高的缘故,还是上面的问题)。
总结下来:
可能宝塔上的插件在某次更新的时候,账号登录掉了或防护墙使用日期到期所致。如果续费或重启都不行的话,直接卸载这两个插件,再依次装回Nginx,在启动,在装回防火墙,问题解决。
然后打开网站确认是否可以打开,告知一切正常。