【问题标题】:Stuck on Nginx index page卡在 Nginx 索引页面上
【发布时间】:2019-06-20 11:10:35
【问题描述】:

我已经在 route53 上配置了我的子域以指向我的 ec2 公共 IP,在我这样做之后,我就欢迎来到 nginx 页面。到目前为止还不错。现在我在 nginx/sites-available 中添加了一个自定义配置文件(也确实将它链接到启用站点并重新加载了 nginx)。我没有看到任何新东西。我仍然看到相同的欢迎页面。我想知道为什么会这样。我也有 proxy_pass to :3000 这似乎不起作用。

这是我尝试的几件事以及我得到的结果。

  1. 更改了根目录中提到的 index.html 文件 (/usr/share/nginx/html) - 仍然是欢迎页面
  2. 用 default_server 和我的子域尝试了 server_name (http://management.teampapercloud.in) - 仍然是欢迎页面
  3. 通过 service nginx stop 停止了 nginx 服务 - 令人惊讶的是它仍然显示欢迎页面。
  4. 试过 sudo lsof -i :80 (当 nginx 运行时,它有 2 个不同的 nginx 处理,运行一个以 root 作为用户,另一个是 www-data),当 nginx 不运行时 sudo lsof -i :80 什么也没有。
  5. 此时我想知道域是否完全命中服务器。我尝试 ping,得到了我的 ec2 ip。尝试 DNS 检查器获取了我的 ec2 ip。
  6. 现在我很沮丧地停止了我的 ec2 实例。现在欢迎页面不见了。这意味着我相信我的 ec2 实例正在做一些事情来显示页面,但我不知道是哪个服务。
  7. 检查顶部和服务--status-all | grep + 我没有看到任何奇怪的服务正在运行,也没有像 Apache 这样的服务。因为根本没有安装 apache。
  8. 作为最后的尝试,我什至卸载了 nginx。 - 我仍然看到相同的欢迎页面。
  9. 更新了我能找到的所有 index.html 文件 - 仍然是相同的欢迎页面。

在这一点上,我没有任何想法,也不明白发生了什么。非常感谢您的帮助。

谢谢

【问题讨论】:

  • ec2 是否缓存页面?我认为您应该检查页面缓存设置。
  • 你的意思是浏览器缓存吗?或者是其他东西?我在哪里可以检查?
  • 我不是指浏览器缓存。我不确定,ec2 可以有任何页面缓存设置。

标签: amazon-web-services nginx amazon-ec2 nginx-location nginx-config


【解决方案1】:
  1. 你写过,你重新加载nginx,再试一次(有时我们忘记检查常见的东西):

    • sudo service nginx -t # 检查配置语法是否正常
    • sudo service nginx reload #reload 配置
    • sudo service nginx restart#重启服务器
  2. 另一个重要的事情,检查终端的实时登录

    • 错误日志:tail -f /var/log/nginx/error.log
    • 访问日志:tail -f /var/log/nginx/access.log
    • 并从浏览器访问页面并检查登录终端。
    • Note: Log files can be in different directory in your server.
      用这个检查日志文件:ls /var/log/nginx/
  3. 如果您有权重新启动,可能会重新启动操作系统。

  4. ec2 可以有任何页面缓存设置。

  5. 您是否使用了cloudflare 名称服务器,它可以缓存一个 页面,或者,任何可以缓存页面的代理服务器或其他东西。
  6. 你甚至可以试试browser incognito window,在浏览器中强制重新加载 (ctrl + shift + R)。

【讨论】:

  • 我不知道在nginx之前有没有代理,可能是ec2缓存。我已经尝试了所有其他点中提到的内容,我创建了一个新的 ec2 实例并将我的子域指向它。这解决了问题,但仍然无法弄清楚我的其他实例没有工作。
  • 但有时,操作系统中可能出现任何问题,安装 nginx 时可能出现任何问题。那么,为什么不简单地在新创建的 ec2 实例上设置主域并删除旧的 ec2 实例(if there has not much extra cost)
  • 我在 vps 中安装了 nginx 很多次,有时我看到的问题很奇怪。
  • 是的,我就是这么做的。
【解决方案2】:

未应用更改,因为您没有对 root directory 进行任何更改,即

/var/www/html$

因为这是您的网络服务器的默认公用文件夹。此外,如果您愿意,可以将此默认路径更改为您想要的路径。

如您所见,我有"index.nginx-debian.html",更改后立即生效。

【讨论】:

  • 如前所述,我更改了所有 html 页面,包括 /var/www/html 中的页面。它没有改变任何东西。
  • @rbashish 看起来,这是一个不常见且奇怪的问题。
猜你喜欢
  • 2020-11-05
  • 1970-01-01
  • 2010-11-14
  • 2015-02-05
  • 2021-07-05
  • 2012-11-29
  • 1970-01-01
相关资源
最近更新 更多