我急需帮助。我的网站瘫痪了,我不知道从哪里开始排除故障。
我有一个 GoDaddy 域并且正在运行 AWS EC2 实例。
问题:
当我尝试从 Chrome 浏览器访问该网站时,它一直在加载,并一直显示“正在等待 www.xyz.com...”。在我的“开发人员工具”窗口中,我没有看到任何发送到该 URL 的请求。
我能够通过终端连接到我的 EC2 实例并看到服务器实时运行。未收到任何请求。
问题可能出在哪里?如何检查请求失败的位置?
任何帮助,将不胜感激。
++++++++++ 以下是 TRACEROUTE 结果 ++++++++++++++
traceroute to www.xyz.co (xx.xx.xx.xx), 30 hops max, 60 byte packets
1 * * *
2 core22.hetzner.de 213.239.229.133 de 0.188 ms
core21.hetzner.de 213.239.229.129 de 0.246 ms 0.251 ms
3 core1.hetzner.de 213.239.245.177 de 4.909 ms
core4.hetzner.de 213.239.245.18 de 4.871 ms
core1.hetzner.de 213.239.245.177 de 4.909 ms
4 juniper4.ffm.hetzner.de 213.239.245.10 de 4.948 ms 4.956 ms
in
5 ae1-710.fra20.core-backbone.com 80.255.15.121 de 4.960 ms 4.974 ms 4.982 ms
6 ffm-b4-link.telia.net 213.248.81.209 4.985 ms 5.020 ms 5.026 ms
7 ffm-bb3-link.telia.net 62.115.120.3 5.455 ms
ffm-bb3-link.telia.net 62.115.120.1 5.545 ms
ffm-bb4-link.telia.net 62.115.120.9 5.459 ms
8 nyk-bb4-link.telia.net 62.115.139.15 99.212 ms
ffm-b1-link.telia.net 62.115.116.162 5.777 ms
nyk-bb1-link.telia.net 213.155.135.61 93.229 ms
9 chi-b21-link.telia.net 213.155.131.241 116.821 ms
ffm-bb4-link.telia.net 62.115.116.159 104.857 ms
chi-b21-link.telia.net 80.91.246.18 123.398 ms
10 hbg-bb1-link.telia.net 62.115.123.81 12.153 ms
hbg-bb1-link.telia.net 62.115.123.77 12.160 ms
sea-b1-link.telia.net 62.115.117.48 162.375 ms
11 amazon-ic-307566-sea-b1.c.telia.net 62.115.47.198 164.111 ms
kbn-bb4-link.telia.net 62.115.119.250 24.006 ms
amazon-ic-307566-sea-b1.c.telia.net 62.115.47.198 164.111 ms
12 nyk-bb1-link.telia.net 80.91.249.24 96.662 ms * *
13 * * *
14 sea-b1-link.telia.net 62.115.116.140 163.699 ms 164.885 ms 167.923 ms
15 amazon-ic-307562-sea-b1.c.telia.net 213.248.92.242 166.730 ms *
amazon-ic-302506-sea-b1.c.telia.net 213.248.84.190 164.407 ms
16 * * *
17 * * *
18 * * *
3 跳无回复。假设我们到达了防火墙。
答案1
由于 traceroute 正在解析 IP,因此我认为这不是 DNS 问题。要确认,请查看 @mzhaase 在评论中建议的内容。也可以尝试
telnet www.xyz.com 80
telnet IP-Address 80
(假设您的网站在端口上运行80
)。
通常,“正在等待 www.xyz.com...”问题是由于apache 中webserver
ie 的服务器限制造成的Maxclients
。这是可以同时处理的最大请求数量,超过限制的任何请求都会被排队,用户会收到"Waiting for www.xyz.com..."
某种消息。
粗略的谷歌搜索给了我这些链接,它们可能有助于你调整 Apache链接1和链接2。如果您不习惯 apache 配置,最好联系您的托管服务提供商来执行此操作。
这链接将帮助您更清楚地了解 Apache 中的连接。
笔记如果存在这个问题,您可能有时可以访问该网站,有时则不能。
答案2
更新 - 最新 2016 年 12 月 12 日
大家好,我之前发布过一个答案,事后看来,这似乎是一个不完整的解决方案。我的 EC2 服务器实际上安装了 Apache2 和 DjangoChannels。它还使用外部 Redis 服务器(单独的 AWS EC2)。
先前决议的错误:之前我重启了第一个 EC2,它重启了 Apache2,网站开始通过 Apache 而不是 Django Channels 进行交付。直到两天后我才发现这一点,当时我注意到网站上依赖 Django Channels 的功能根本不起作用。所以我停止了 Apache2 并重启了 DjangoChannels 服务器(Daphne + worker);我又回到了原点。
最终解决方案-重新启动REDIS AWS EC2:从 AWS 控制台重新启动 Redis EC2,最终解决了该问题。Django Channels 服务器和 Redis Server 所需的配置开始工作。我的 Django Channels 依赖功能也恢复了。
上一个答案 -
谢谢大家的帮助。我刚刚解决了这个问题。
重新启动AWS EC2: 我所做的只是从 AWS 管理控制台重新启动 AWS EC2 实例。虽然我不确定是什么导致了这个问题,但可能是 RAM 达到了最大利用率。
更多信息:我联系了亚马逊,他们说他们那边没有发生任何中断。所以我想到启动一个新的 EC2。幸运的是,在启动之前,我想“我应该重启一下并检查一下”,这个想法很管用。
如果您对此可能起作用还有其他猜测,请告诉我,这可能有助于更好地理解未来实例中的问题。