curl用法:获取网站的header头及状态码
curl命令最常用的方法是使用参数-I 获取域名或IP的header信息,包括HTTP返回状态码,server类型,文本类型,缓存时间等等;监控web服务时也常用此方法判断web服务是否正常;
监控web服务,可以使用curl获取网站的header头,查看返回值是否是200 OK,作为判断web服务正常的一个标准;
使用curl -I 可以获取,如果提取第一行信息时,会出现一些不需要的信息,那我们该怎么取呢?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
[baby@localhost ~]$ curl -I mofansheng.blog.51cto.com
HTTP /1 .1 200 OK
Server: Tengine
Date: Thu, 15 Oct 2015 06:10:17 GMT
Content-Type: text /html
Connection: keep-alive
Keep-Alive: timeout=10
Vary: Accept-Encoding
Set-Cookie: PHPSESSID=8c0bac037cf2cfd8b87e7dde079eb3bf; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: lastvisit=0%091444889417%09%2Findex.php%3F; expires=Fri, 14-Oct-2016 06:10:17 GMT; path=/; domain=.blog.51cto.com
If-Modified-Since: Sat, 10 Oct 2015 16:00:00 GMT
Load-Balancing: web48
Load-Balancing: web48
|
使用grep过滤第一行,发现出来很多不需要的信息
[baby@localhost ~]$ curl -I mofansheng.blog.51cto.com|grep "OK"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
HTTP/1.1 200 OK
解决方法为:
man curl 查看是否有具体参数可以达到我们需要的结果;
-s/--silent
Silent or quiet mode. Don’t show progress meter or error messages.
-s 是沉默,静默模式,意思为不输出进度表或错误信息;
1
2
|
[baby@localhost ~]$ curl -I -s mofansheng.blog.51cto.com| grep "OK"
HTTP /1 .1 200 OK
|
一条命令取出200的方法:
1
2
|
[root@yonglinux ~] # curl -s -w "%{http_code}" -o /dev/null www.baidu.com
200
|
其他方法:可以把错误输出定向到系统黑洞里,再进行过滤
1
2
3
4
|
[baby@localhost ~]$ curl -I mofansheng.blog.51cto.com 2> /dev/null | grep "OK"
HTTP /1 .1 200 OK
[baby@localhost ~]$ curl -I mofansheng.blog.51cto.com 2> /dev/null | head -n1
HTTP /1 .1 200 OK
|
本文转自 模范生 51CTO博客,原文链接:http://blog.51cto.com/mofansheng/1704117,如需转载请自行联系原作者
curl用法:获取网站的header头及状态码相关推荐
- php 获取header头信息并显示网址,php 获取远程网址header头信息的方法
一个用PHP获取远程网址header头信息的方法,这在采集时很有用,他可以让你判断出来,远程文件或网页是否正常,是否是404页 有二种方法, 1.用php的函数get_headers get_head ...
- linux curl命令读取页面信息,使用Curl命令获取网站Web服务器类
Curl是一款用于在网络上传输数据的工具,支持HTTP, HTTPS, FTP, FTPS, TFTP, DICT,TELNET,LDAP等协议.通过curl你既可以将服务器的数据下载下来,也可以将本 ...
- python flask 设置 header 响应体、响应头、状态码
需求场景 在api设计中,基于restful的设计原则,一个http的响应应该包含执行的响应信息以及状态码. 例如:一个错误信息的响应信息应该包含内容以及返回对应的设计错误码. 在flask中如何制定 ...
- favicon自动获取_php获取网站favicon.ico图标 api源码 自动获取并添加Favicon图标
通常情况下,做网站的都会给自己的网站添加一个Icon,浏览器上一长排的标签页,用Icon来区分就显得更加醒目.现在想找一个没有Icon的网站并不好找,可见没有Icon的网站是多么的业余啊." ...
- http简介以及常见知识和http请求头,响应头,状态码,内容类型对照表分享(超实用)
1.http简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的 ...
- 【Curl】 获取网站下载速率(Bytes/s)
curl -o /dev/null -s -w %{speed_download} www.baidu.com
- 网站301跳转问题的探讨和用法,网站做301跳转的相关问题
网站301跳转问题的探讨和用法以及网站做301跳转的相关问题 作者:叶涛(华军软件园seo) 相信站长朋友们都对301跳转有一定的了解,知道在网站优化中可以帮助自己,但是有些站长朋友却对如何合理使用 ...
- Python 获取网站证书有效期
Python获取网站证书有效期 Python获取网站证书有效期 python:OpenSSL和ssl python+shell:subprocess和curl Python获取网站证书有效期 由于某些 ...
- 获取、设置响应头、设置缓冲区
获取请求头 获取请求头使用HttpServletRequest对象的getHeader().getHeaders().getHeaderNames().getIntHeader().getDateHe ...
最新文章
- 无人驾驶推进时间表及五大技术领域关键节点
- 孩子听不进道理怎么办?
- uniapp中easycom组件的封装
- Java 应用性能调优,可视化工具
- 【译】On Path Independence
- 总结的linux 基础命令
- React类里面能写的东西
- 图形学 射线相交算法_计算机图形学中的阴极射线管(CRT)
- for in for of区别_这个句型中用介词for还是of?来看看解题技巧
- Java学习笔记基础(中)
- python算法精解pdf_python算法精解
- 宏杉科技摆“擂台”,遍寻天下存储技术高手
- 在线uml画图工具网站
- java工作了7年很迷茫,一个5年Java程序员的年终总结,献给还在迷茫中的你
- 成长笔记之博客统计第一篇
- 沧海的孤塔-chimera
- 计算机usb接口失灵,电脑usb接口全部失灵
- 【转】主板上的电压符号:vdd,vddq,5vsb,3.3sb,vcc3.3,Vdimm
- MaximalRectangle
- linux 脚本 input,Linux 下通过命令行和脚本开关笔记本触控板和其他输入外设