H TTP 协议允许客户端为其请求的文档指定时间条件。是If-Modified-Since或If-Unmodified-Since。如何使用curl Unix/Linux 命令行选项来测试服务器的If-Modified-Since条件并验证Last-Modified设置?
教程详情 | |
---|---|
难度级别 | 简单的 |
根权限 | 不 |
要求 | 卷曲 |
美东时间。阅读时间 | 1分钟 |
您可以使用curl命令查看它们保存的副本(http资源,例如text/html或image/png)是否仍然有效。但是,只有当响应具有 Last-Modified 标头时,这才有效。您可以使用 Web 服务器或 Web 应用程序发送 Last-Modified 标头。
步骤#1:查明响应是否有 Last-Modified 标头
键入以下curl命令:
卷曲--silent --head http://server1.example.com/foo/bar/pwvcfmshqyyrkkojnhplwldtdcaqxtpd.png 卷曲--silent --head http://server1.example.com/foo/help.html
或者
curl -I http://server1.example.com/foo/bar/pwvcfmshqyyrkkojnhplwldtdcaqxtpd.png curl -I http://server1.example.com/foo/help.html
在此示例中,记下对此 HEAD 请求的响应中的 Last-Modified 标头:
$ curl -I http://www.example.com/faq/
示例输出:
HTTP/1.1 200 好
服务器:nginx
日期:2012 年 12 月 11 日星期二 10:10:24 GMT
内容类型:text/html;字符集=UTF-8
连接:保持活动状态
X-Whom:l2-com-cyber
最后修改时间:2012 年 12 月 11 日星期二 10:10:23 GMT
缓存控制:max-age=299,必须重新验证
变化:饼干
X-Pingback:http://www.example.com/faq/xmlrpc.php
X-银河:Andromeda-1
变化:接受编码
使用curl 命令行发送 If-Modified-Since 标头的语法如下:
示例输出:
$ curl -I --header 'If-Modified-Since: DATE-FORMAT-HERE' http://server1.example.com/foo/bar/pwvcfmshqyyrkkojnhplwldtdcaqxtpd.png
$ curl -I --header 'If-Modified-Since: Tue, 11 Dec 2012 10:10:24 GMT' http://www.example.com/faq/
HTTP/1.1 304 未修改
服务器:nginx
日期:2012 年 12 月 11 日星期二 10:12:11 GMT
连接:保持活动状态
X-Whom:l2-com-cyber
变化:饼干
最后修改时间:2012 年 12 月 11 日星期二 10:10:23 GMT
X-银河:Andromeda-1
变化:接受编码
该资源发送 304 Not Modified 响应,表明它支持 Last-Modified 验证。