几个月前我安装了 Nginx 并部署了一些代码。我显然删除了默认的 index.html Nginx 默认页面。我确信这一点,因为当时没有安装 PHP,所以 index.html 是主页。
一切都运行正常,直到我收到一封电子邮件,有人告诉我他们无法访问网站。Nginx 默认/欢迎页面正在显示!我立即进行了调查,并覆盖了正确的 index.html 文件。
我的第一反应是,这是一起安全事故,但我查看了所有服务器日志,没有发现任何未经授权的访问。我还确信自己没有意外上传该文件——我搜查了我的计算机,但我甚至没有欢迎页面的副本。
有谁见过这种情况或知道这种情况是怎么发生的吗?我完全不知道是什么原因造成的,所以无法采取措施防止这种情况再次发生。
答案1
如果不知道您的发行版以及 nginx 的安装方式,就无法确定,但问题很可能是 nginx 软件包已升级,并覆盖了您index.html
创建的。发生这种情况是因为大多数 Linux 发行版之外的文件/etc
被视为“由软件包管理器管理”,因此对这些文件的本地修改将被软件包更新覆盖。
解决方案是不要使用 nginx 使用的默认位置,而是将 nginx 配置为在系统上查找其他位置,并将您的网站内容放在那里。然后,该包可以对默认欢迎页面做任何想做的事情,您无需担心。