以下转载自
作者:HugoforAndroid
来源:CSDN
原文:https://blog.csdn.net/lipengshiwo/article/details/54378176
版权声明:本文为博主原创文章,转载请附上博文链接!
安装最新版本的Curl,否则不支持--resolve命令
$ wget https://curl.haxx.se/download/curl-7.51.0.tar.gz
$ tar zxvf curl-7.51.0.tar.gz$ cd curl-7.51.0
$ ./configure --prefix=/usr/local/curl
$ make;make install
$ export PATH=/usr/local/curl/bin:$PATH
$ source /etc/profile
$ curl -Vcurl 7.51.0 (x86_64-pc-linux-gnu) libcurl/7.51.0 OpenSSL/1.0.1e zlib/1.2.3 #提示版本信息
1. 使用head方式发送http请求,返回url的头部信息
检查CDN页面访问是否正常。
$ curl -I http://image.meilele.com/css/promotion/promotion.min.css?1208
---------------------------------------------------------------
HTTP/1.1 200 OK #200状态码表示正常
Server: nws_ocmid_hy
Connection: keep-alive
Date: Thu, 12 Jan 2017 03:23:43 GMT
Cache-Control: max-age=600 #缓存时间600秒
Expires: Thu, 12 Jan 2017 03:33:43 GMT
Last-Modified: Thu, 12 Jan 2017 03:10:00 GMT #文件版本修改时间
Content-Type: text/css
Content-Length: 32615
X-Cache-Lookup: Hit From Disktank3
X-Daa-Tunnel: hop_count=3
X-Cache-Lookup: Hit From Inner Cluster
X-Cache-Lookup: Hit From Upstream
X-Cache-Lookup: Hit From Inner Cluster
检查源站访问是否正常。
curl -I http://114.67.59.203/css/promotion/promotion.min.css?1208 -H 'host:image.meilele.com' #114.67.59.203是客户的源站IP---------------------------------------------------------------
HTTP/1.1 200 OK #源站正常
Server: nginx
Date: Thu, 12 Jan 2017 03:25:35 GMT
Content-Type: text/css
Connection: keep-alive
若出现4XX、5XX等状态码,可作为报障依据。
2.使用 GET 方法,将访问到的url内容存到本地
将用户源站内容下载到本地
$ curl -o 1.css http://114.67.59.203/css/promotion/promotion.min.css?1208
-H 'host:image.meilele.com'
---------------------------------------------------------------
100 32615 0 32615 0 0 191k 0 --:--:-- 193k
将CDN内容下载到本地
$ curl -o 2.css http://image.meilele.com/css/promotion/promotion.min.css?1208
---------------------------------------------------------------
100 32615 100 32615 0 0 47975 0 --:--:-- 49491
比较源站与CDN内容,若不一致代表CDN没有更新源站内容
$ md5sum 1.css 2.css #比较md5值可判断源站与CDN内容不一致
6600862713e67ad2ce71d62be014797e 1.css
455901e5a116f23b413c45ee8f1f5a62 2.css
若内容不一致,可以采用刷新CDN内容,进行手动同步
3.指定代理域名+端口 或 IP+端口来发送请求head请求
分析七牛存储上是否包含用户的内容
$ curl -I 'http://devtools.qiniu.com/qiniu.png' -x 'iovip.qbox.me:80' #代理域名+端口
或者$ curl -I 'http://devtools.qiniu.com/qiniu.png' -x '183.131.7.23:80' #IP+端口
---------------------------------------------------------------
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 06 Sep 2016 09:13:18 GMT
Content-Type: image/png
Content-Length: 163469
Connection: keep-alive
Accept-Ranges: bytes
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: X-Log, X-Reqid
Access-Control-Max-Age: 2592000
Cache-Control: public, max-age=31536000
Content-Disposition: inline; filename="qiniu.png"
Content-Transfer-Encoding: binary
Etag: "FpHyF0kkil3sp-SaXXX8TBJY3jDh"
Last-Modified: Thu, 28 Jul 2016 10:28:31 GMT
X-Log: mc.g:16;IO:62
X-Reqid: K18AAD3XulsHsXEU
X-Qiniu-Zone: 0
4.指定请求的头部,比如Host或者Referer等
CDN检验Referer白名单配制是否正常
$curl -I --referer http://1.sina.com/ http://img.jiemian.com/101/original/20161229/148300375266728000_a580x330.jpg 2>/dev/null|grep 'HTTP'
---------------------------------------------------------------
HTTP/1.0 403 Forbidden #表示内容不存在或者被拒绝访问
$curl -I --referer http://1.qq.com/ http://img.jiemian.com/101/original/20161229/148300375266728000_a580x330.jpg 2>/dev/null|grep 'HTTP'
---------------------------------------------------------------
HTTP/1.1 200 OK #表示Referer白名单跳转请求允许访问到资源---
5. HTTPS检测URL方法
CDN厂商提供一个CDN节点来验证https是否配制成功,通过resolve参数将https的请求重定向到IP节点
curl -IL https://fdh5imgcdn.oz1997.com/lp/img/head/t011.jpg
-H 'referer:http://csdn.kmtyjz.com' --resolve fdh5imgcdn.oz1997.com:443:58.216.109.182 2>/dev/null|grep 'HTTP'HTTP/1.1 200 OK
6.验证点播平台拖拽功能
start参数后是mp4的起始时间,改变START后的参数查看下载内容是否随之改变
$ curl -o /dev/null http://vodxuanw.sobeycache.com/vod/2016/07/04/0739e865fba446faa7fdd128b27369ef/h264_256k_mp4_001.mp4?start=50
% Total % Received 1 6271k 1 69556 #从50秒开始下载,总共有6271k的资源可下载
$ curl -o /dev/null http://vodxuanw.sobeycache.com/vod/2016/07/04/0739e865fba446faa7fdd128b27369ef/h264_256k_mp4_001.mp4?start=100 % Total % Received 23 3626k 23 839k #从100秒开始下载,总共有3626k的资源可下载