服务器问答

CentOS 7.6、Nginx 下的 index.html 和 50x.html 不定期变成初始安装状态的问题
0
2021-05-19 18:42:32
idczone

腾讯云上的主机,架了一个小网站,近一年来经常不定期地出现奇怪的现象,就是 index.html 和 50x.html 这两个文件无故被替换成初始化的 Welcome 页面的状态,而同路径下的其它页面文件则从未变动。

操作系统:

  • CentOS Linux release 7.6.1810
  • Linux version 3.10.0-693.21.1.el7.x86_64

NGINX:

  • nginx/1.17.0

主机已经设置了 PasswordAuthentication no ,另外查看日志也未发现异常的登录记录。

使用 crontab -uroot -l 查看定时任务只有如下两条,且两个脚本文件内容也很正常。

*/1 * * * * /usr/local/qcloud/stargate/admin/start.sh > /dev/null 2>&1 &
0 0 * * * /usr/local/qcloud/YunJing/YDCrontab国外服务器.sh > /dev/null 2>&1 &

请问各位是否有遇到过同样问题,这种现象可能是什么原因造成的?


nginx 是 yum 直接安装的吗?

嗯,是的。
```shell
tail /var/log/yum.log
May 22 07:30:31 Updated: nginx.x86_64 1:1.17.0-1.el7.ngx
May 24 04:57:54 Updated: php-pear.noarch 1:1.10.9-3.el7.remi
May 27 05:42:34 Updated: nginx-mod-http-geoip.x86_64 1:1.12.2-3.el7
May 27 05:42:35 Updated: nginx-mod-stream.x86_64 1:1.12.2-3.el7
May 27 05:42:35 Updated: nginx-mod-mail.x86_64 1:1.12.2-3.el7
May 27 05:42:35 Updated: nginx-mod-http-xslt-filter.x86_64 1:1.12.2-3.el7
May 27 05:42:35 Updated: nginx-mod-http-image-filter.x86_64 1:1.12.2-3.el7
May 27 05:42:36 Updated: nginx-mod-http-perl.x86_64 1:1.12.2-3.el7
May 27 05:42:36 Updated: nginx-all-modules.noarch 1:1.12.2-3.el7
May 27 05:42:36 Updated: nginx-filesystem.noarch 1:1.12.2-3.el7
```

这两天好像在哪个帖子里看到说,yum 安装的 nginx 会在升级的时候动网站的目录来着,不知道是不是这样说的,有点记不清了

谢谢提醒,如果是这样的话,我试着找一找。

硬核解决方法:把这两个文件设置为只读权限就好了

已调整,观察一年……

用 docker 的 nginx 啊

Chattr

你是不是改动了安装包自带的文件了?
升级软件的时候可能会给你恢复回去?

只修改了 /etc/nginx/conf.d/default.conf 文件,增加了 ssl,root location 都是默认的 /usr/share/nginx/html。

不要用 default.conf 配置网址,自己建一个 .conf 例如 aaa.com.conf。


/usr/share/nginx/html 是系统目录吧,应该是不属于你管辖的,里面都是安装包自带的文件。
存在里面的文件都可能被改动,也就是说哪天你升级完以后发现网站整个被删了也不算意料之外。
网站一般是存放在 /var/www 下的。
删掉 default.conf,增加每个网站自己的 conf,指向 /var/www/下不同的目录。
这算是比较标准的做法。

这问题,看下 nginx 配置即可

感谢,按照建议调整了一下,web 数据放到了 /var/www/domain.tld/html 下,后续观察一下。
另外问个额外的问题,https://www.v2ex.com/t/568159,昨天还提了一个网络问题,但是主题列表里始终无法显示,是被隐藏了么,还是怎么?

/t/568159 是关键词触发自动移动。VxN 本身就会被运营商限制,建议考虑其他替代手段。

哦如此。
目前家里电信宽带下开着 V*N 服务比较稳定,其实更喜欢直接使用 V*N 连回家里局域网,感觉更自然,至少各个终端原生支持,而且目前的状态是联通&移动都能成功连回去,唯独电信链路连接不成功。
下午分别在移动和电信(石家庄)链路下抓了包,发现连接 V*N 的过程中,第一阶段的 6 次 Main mode 以及第二阶段的 3 次 quick mode 都正常,也就是说成功建立了 IPSec SA 对,接下来客户端向服务器端发送了 ESP 数据后,出现问题了,下图是通过移动链路连接成功的数据包,客户端发送 ESP 数据后 [从 1654 开始],成功接收到服务器端返回的数据 [1658]:

而通过电信链路连接时,当客户端发送 ESP 数据后 [从 17 开始],并未接收到服务器端返回的数据,直至超时,见下图:

结合 V*N 可以通过移动及联通链路成功连接的情况判断,猜测应该是石家庄电信的深度包检测发挥了作用,丢弃掉已加密的 ESP 数据。

看不到图片的同学,请右键图片打开。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服