如何编程检查网站是否正常工作?
我有一个自己托管的WordPress博客,上周之前一直无法访问。更新了WordPress之后,现在网站运行得很好。不过,我想在接下来的几天里经常检查一下网站的状态。请问有没有办法写个程序来做到这一点,这样我就可以定时检查了?
请给我一些建议。我在考虑用Python来写这个程序,但我也愿意尝试其他语言。
7 个回答
0
最近我看了一个博客,里面提供了一些不错的思路来解决这个问题。
http://blogs.msdn.com/b/vijay/archive/2009/04/23/how-to-check-programmatically-if-a-website-is-running.aspx
1
执行一个HTTP请求,看看返回的结果是否是200 OK。这可以很简单地通过PycURL来实现。
以下是文档中的示例:
import pycurl
c = pycurl.Curl()
c.setopt(pycurl.URL, "http://example.com")
c.setopt(pycurl.FOLLOWLOCATION, 1)
c.perform()
print c.getinfo(pycurl.HTTP_CODE)
4
你可以用一个简单的方法来检查网站是否正常运行。只需要使用一个叫做 HTTPConnection 的工具,发送一个“OPTIONS *”的请求。如果你收到的回复是“200 OK”,那说明你的网站是正常的。如果不是,那就需要查看一下返回的错误代码了。
import httplib
connection = httplib.HTTPConnection(your_host, port_probably_80)
connection.request("OPTIONS", "*")
response = connection.getresponse()
if response.status != httplib.OK or response.reason != "OK":
print "Down"
else:
print "Up :)"