V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
sinv
V2EX  ›  NGINX

CentOS 7.6、Nginx 下的 index.html 和 50x.html 不定期变成初始安装状态的问题

  •  
  •   sinv · 2019-05-27 20:35:51 +08:00 · 2996 次点击
    这是一个创建于 2011 天前的主题,其中的信息可能已经有所发展或是发生改变。

    腾讯云上的主机,架了一个小网站,近一年来经常不定期地出现奇怪的现象,就是 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 &
    

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

    17 条回复    2019-05-28 21:27:52 +08:00
    wtks1
        1
    wtks1  
       2019-05-27 20:36:56 +08:00 via Android
    nginx 是 yum 直接安装的吗?
    sinv
        2
    sinv  
    OP
       2019-05-27 20:55:15 +08:00
    @wtks1 嗯,是的。
    ```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
    ```
    wtks1
        3
    wtks1  
       2019-05-27 21:01:45 +08:00 via Android   ❤️ 1
    @sinv 这两天好像在哪个帖子里看到说,yum 安装的 nginx 会在升级的时候动网站的目录来着,不知道是不是这样说的,有点记不清了
    sinv
        4
    sinv  
    OP
       2019-05-27 21:08:41 +08:00
    @wtks1 谢谢提醒,如果是这样的话,我试着找一找。
    KasuganoSoras
        5
    KasuganoSoras  
       2019-05-27 21:15:21 +08:00   ❤️ 1
    硬核解决方法:把这两个文件设置为只读权限就好了
    sinv
        6
    sinv  
    OP
       2019-05-27 21:20:58 +08:00
    已调整,观察一年……
    qwerthhusn
        7
    qwerthhusn  
       2019-05-27 21:45:31 +08:00   ❤️ 1
    用 docker 的 nginx 啊
    zwh2698
        8
    zwh2698  
       2019-05-27 23:12:38 +08:00 via Android   ❤️ 1
    Chattr
    msg7086
        9
    msg7086  
       2019-05-28 01:52:37 +08:00 via Android
    你是不是改动了安装包自带的文件了?
    升级软件的时候可能会给你恢复回去?
    sinv
        10
    sinv  
    OP
       2019-05-28 02:01:32 +08:00
    @msg7086 只修改了 /etc/nginx/conf.d/default.conf 文件,增加了 ssl,root location 都是默认的 /usr/share/nginx/html。
    Kaiyuan
        11
    Kaiyuan  
       2019-05-28 02:23:04 +08:00
    不要用 default.conf 配置网址,自己建一个 .conf 例如 aaa.com.conf。
    msg7086
        12
    msg7086  
       2019-05-28 03:29:56 +08:00   ❤️ 1
    @sinv
    /usr/share/nginx/html 是系统目录吧,应该是不属于你管辖的,里面都是安装包自带的文件。
    存在里面的文件都可能被改动,也就是说哪天你升级完以后发现网站整个被删了也不算意料之外。

    网站一般是存放在 /var/www 下的。
    删掉 default.conf,增加每个网站自己的 conf,指向 /var/www/下不同的目录。
    这算是比较标准的做法。
    Bardon
        13
    Bardon  
       2019-05-28 07:32:14 +08:00
    这问题,看下 nginx 配置即可
    sinv
        14
    sinv  
    OP
       2019-05-28 12:10:56 +08:00
    @msg7086 感谢,按照建议调整了一下,web 数据放到了 /var/www/domain.tld/html 下,后续观察一下。

    另外问个额外的问题,https://www.v2ex.com/t/568159,昨天还提了一个网络问题,但是主题列表里始终无法显示,是被隐藏了么,还是怎么?
    msg7086
        15
    msg7086  
       2019-05-28 15:13:41 +08:00
    @sinv /t/568159 是关键词触发自动移动。VxN 本身就会被运营商限制,建议考虑其他替代手段。
    sinv
        16
    sinv  
    OP
       2019-05-28 21:25:49 +08:00
    @msg7086 哦如此。
    目前家里电信宽带下开着 V*N 服务比较稳定,其实更喜欢直接使用 V*N 连回家里局域网,感觉更自然,至少各个终端原生支持,而且目前的状态是联通&移动都能成功连回去,唯独电信链路连接不成功。
    下午分别在移动和电信(石家庄)链路下抓了包,发现连接 V*N 的过程中,第一阶段的 6 次 Main mode 以及第二阶段的 3 次 quick mode 都正常,也就是说成功建立了 IPSec SA 对,接下来客户端向服务器端发送了 ESP 数据后,出现问题了,下图是通过移动链路连接成功的数据包,客户端发送 ESP 数据后 [从 1654 开始],成功接收到服务器端返回的数据 [1658]:

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


    结合 V*N 可以通过移动及联通链路成功连接的情况判断,猜测应该是石家庄电信的深度包检测发挥了作用,丢弃掉已加密的 ESP 数据。
    sinv
        17
    sinv  
    OP
       2019-05-28 21:27:52 +08:00
    #16 看不到图片的同学,请右键图片打开。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1580 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 16:58 · PVG 00:58 · LAX 08:58 · JFK 11:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.