在linux中获取网站的状态代码

时间:2012-04-19 12:47:06

标签: linux apache http-status-codes

我有一个小vps,我主持了一个我开发的网络应用程序,它开始接受大量访问。

我需要检查/验证,一些如何,每隔X分钟查看网络是否已启动并运行(检查状态代码,200)或是否已关闭(代码500),如果已关闭,则重新启动运行a我为重启某些服务而编写的脚本。

知道如何在linux中检查吗? Curl,Lynx?

4 个答案:

答案 0 :(得分:2)

curl --head --max-time 10 -s -o /dev/null \
    -w "%{http_code} %{time_total} %{url_effective}\n" \
    http://localhost

10秒后超时,并报告响应代码和时间

如果请求超时(检查$?)

,Curl将以错误代码28退出

答案 1 :(得分:1)

在姐妹网站(serverfault)上发现这个 https://serverfault.com/questions/124952/testing-a-website-from-linux-command-line

wget -p http://site.com

这似乎可以解决问题

答案 2 :(得分:1)

对于类似的问题,这些工具的man页面通常会提供所有可能选项的相当好的列表。

对于curl,您还可以找到它here

您似乎搜索的选项为-w http-code variable

修改

请参阅@ Ken关于如何使用-w的答案。

答案 3 :(得分:-1)

好的,我创建了两个脚本:

  1. site-statush.sh http://yoursite.com => 检查网站状态,如果是200,则不做任何事情,否则调用 services-action.sh restart
  2. services-action.sh restart => 重启$ services中指示的所有服务
  3. https://gist.github.com/2421072

    上查看