一次ACL(alibaba cloud linux)的nginx网站启动失败的排查过程

我是linux技术小白,在linux技术的大海中艰难求生,当遇到系统问题的潮水袭来,只有拼命求助网络,方法就是复制粘贴加搜索。这个方法大多数可以,但许多情况下无法解决。

一直以来,在阿里云部署的nginx服务器下几个站点运转正常。前几天,我把公众平台后台的文件也上传到服务器,想为公众号添加一个功能,发现之前百试不爽的代码,居然无法运行。在公众平台底部回复关键词,居然没有任何反应。排查路径没有问题,服务器配置也已经通过。之前公众号后台开发的时候,怎么都会提示一句:公众号出现故障,请稍后再试。。现在后台没有回复,说明代码中出现的大错误,平台已经懒得搭理了。最后经过一段时间消耗精力地搜索排查,发现是我的服务器的php环境下,核心扩展simplexml没有安装,导致simplexml_load_string函数无效。然后就开始了我linux技术小白的艰难之旅。

首先,我登录服务器,使用命令 php -m 查看了安装的扩展模块,没有发现 simplexml 的踪影。

然后,我按照搜来的方法,有的方法一看就不对,卸载了php服务,再次按照阿里云上的教程,安装了一次php,版本还是之前的 php 8.0.30。同时严格按照教程进行了设置。使用命令 php -v 发现正确安装。

然后,我再一次检测公众号后台代码,没有用,再次查看 php -m,仍然没有安装 simplexml。

接着,我开始了在互联网的努力搜索。找到了许多安装该扩展的方法,但是,不管写的多么自信,多么复杂,多么轻描淡写,都没有一丁点用。有的文章说,只需要把php.ini的“;extension=simplexml.io”解除备注就行,我vi打开ini文件,根本没有这一行。有的说安装pecl之后,专门有命令安装php扩展,我鼓捣了一下,根本没有用。然后各种yum、systemctl、等等命令,发现linux系统稳定如磐石,也不宕机,也不反应。我的脸色如命令行的黑白界面一般。

接着,噩梦开始!噩梦开始!噩梦开始!

一、我暂时放弃了为php添加simplexml组件,回头看看我的网站调整一下心情,却发现网站也打不开了,同时部署的网站都无法打开。多个绑定在同一ip上的网站,都指向了网站的根目录的index.html之上,而且所有的css都没有应用。这白底黑字的网页效果,与linux的命令行黑底白字遥相呼应。

二、赶紧我使用 systemctl restart nginx.service 重启 反向服务器。发现启动不了了,一行行代码告诉我了几个关键词:failed 80  Address already in use 等等。

三、马上搜索得知,这是80端口被占用导致,马上搜来命令:netstat -tulnp | grep :80,找到了占用此端口的进程。tcp6    0    0 :::80        :::*     LISTEN   1/systemd

四、然后,我也不知道怎么办。但网上的高手都在给我说,把这个进程给我 kill 了。我弱弱地问,该怎么kill,他们说:kill -9 进程id。我又问,进程id是什么?他们又说,就是进程名称前那个数字。然后,我看到了上面那一行最后的 1/systemd 中的那个数字 1。

五、我怎么也知道,进程 pid = 1 意味着什么。我要是把这的进程 kill 了,我等于自我了断了吧。这些网络高手让我一了百了?我C。

六、然后,我继续搜索方法,有一个文章说,这个 tcp6 进程是 ipv6 服务的专用进程,让我把 ipv6给禁用就好了。文章告诉我,应该这么搞:1、vi /etc/sysctl.conf ,末尾追加三行:net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

我立马追加了,然后立马重启系统,然而没有什么卵用。

七、还有的文章说让我更改端口,把 nginx 的 conf 文件 server 端口改为其他,我担心有影响,所以没有采纳。比如公众平台后台只认识80端口的域名。

八、最后,一篇文章的提示,让我的网站回来了,就是下面的文字内容:

linux系统内安装了例如nginx的网站程序,但是无法正常启动,netstat 查看下 80端口被 systemd 占用。 处理方法 注意务必组好快照备份后再操作。 做好备份后将/usr/lib/systemd/system 内http相关的配置文件重命名后重启主机恢复正常。

我进入目录,更改了 httpd.service 为其他,试了试网站访问,一切正常了。

在最后这一条之前,我几乎动了重装 acl 3.0 的杀心,刀已经提起来了,感觉太复杂没有下手。

九:结语:虽然 simplexml 扩展的事情没有解决,但网站还好回来了,慢慢来吧。这个问题没有解决,httpd改名的问题以后解决吧。

我想问:难道解决linux服务器故障的方法就是“惹不起、躲得起、不想躲、蒙上眼”吗?我想,还是自己没有系统学习 linux 系统的配置方法,导致问题出来,毫无章法。以后有时间了再学习吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值