只是一个简单的问题——我的服务器在我家运行,提供网页http://www.javawag.com/。问题是我家的互联网连接不断随机断开 - 每次大约 10 分钟。这只是一个间歇性问题,希望很快就会消失。但是,我的服务器无法正常恢复 - 当连接恢复时,我仍然可以通过 192.168.0.8(本地)访问它,没有任何问题,但http://www.javawag.com/没有回复。
(顺便说一句 - 我的家庭互联网连接是动态 ISP,域名 www.javawag.com 指向 javawag.dyndns.org,而后者又指向我的 IP,由服务器上的 ddclient 每分钟更新一次)。
有没有办法让服务器定期检查是否可以从外界访问,如果不行就重启 Apache/重启?哦,如果我重启,问题也会自行解决!
答案1
您需要先弄清楚实际问题是什么……听起来您的动态 DNS 客户端在连接恢复后没有正确更新?您也没有说明服务器是否可以通过 IP 或其他协议访问,以及是否只有 Web 服务器部分出现故障?(投票决定移至超级用户)
答案2
嗯,我认为通过重启来解决问题并不是真正的解决方案,在这里也不需要。
我想说,如果你的服务器可以访问外部世界,外部世界也可以访问你。你可以设置一个 cronjob 来检查是否可以每 5 分钟 ping 一次 google,如果不行,请尝试重置网络连接(如果你有 DSL/电缆等拨号 PPP 连接)。
答案3
您可以尝试使用外部网站,例如http://www.downforeveryoneorjustme.com并解析输出以查看您的网站是否可以访问。请“礼貌”一点,不要连续检查……每 5 分钟检查一次就可以了。
您还可以考虑使用外部监控服务,例如星期一但这里的问题是,如果网站关闭或不可用,如何发出信号让其重新启动。如果问题出在服务器的网络连接上,那么您需要一个完全在服务器端的解决方案。
我还会尝试找出中断的根本原因。由于您似乎有一个动态 IP 地址,我会查看当 IP 地址发生变化时,甚至当服务器上发生 DHCP 更新时,是否会发生这种情况。如果这是原因,那么您可以编写一个脚本,在发生这种情况时重新启动 Apache。