测试 ATS 注入缓存

参考了: http://serverfault.com/questions/471684/push-content-to-apache-traffic-servers-cache

得到返回:HTTP/1.0 400 Response Not Cachable

搜索得知,头部传入信息太少,必须包含反映时间的项。那个回答应该是针对旧的 ATS 版本。

这里也有一个参考,更准确些 http://zymlinux.net/trafficserver/FAQ.html

查看官方文档中 proxy-config-http-cache-required-headers 的解释。默认值为2。

修改内容为

PUSH http://www.company.com HTTP/1.0
Content-length: 84

HTTP/1.0 200 OK
Content-type: text/html
Expires: Wed, 29 Nov 2015 07:23:09 GMT
Cache-Control: max-age=60
Content-length: 17

<HTML>
a
</HTML>

重新提交,得到返回:HTTP/1.0 400 Bad Content Length

原来增加了内容,忘了修改Content-length,修改为142,再次提交,成功了

最后整体显示:

$ telnet 127.0.0.1 8080
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
PUSH http://www.company.com HTTP/1.0
Content-length: 142

HTTP/1.0 200 OK
Content-type: text/html
Expires: Wed, 29 Nov 2015 07:23:09 GMT
Cache-Control: max-age=60
Content-length: 17

<HTML>
a
</HTML>HTTP/1.0 201 Created
Date: Fri, 11 Sep 2015 06:03:24 GMT
Server: ATS/5.3.1
Content-Length: 0

Connection closed by foreign host.
aaa@xxx:~$ </HTML>

开启http_ui,在浏览器输入 http://localhost:8080/cache/lookup_url?url=http://www.company.com

可以看到已经可以查到了。

注意两个问题:

1. request 的 url 为 http://www.company.com/,最后多了一个 ’/'。

2. size 为 11, 而不是上面的 17,最后的 "</HTML>" 没有被写入,而且返回信息直接跟在了后面。应该是前面的length 142计算错了。修改为148再换一个url push一次,OK 了。

												

最新文章

  1. css content之counter-reset、content-increment
  2. MySQL数据的主从复制、半同步复制和主主复制详解
  3. 网站迁移时候,发现&lt;head&gt;内容都到body里了
  4. Top 10 Universities for Artificial Intelligence
  5. mysql select语句解析
  6. 【原创】解决鼠标经过子元素触发mouseout,mouseover事件的问题
  7. poj2392
  8. shell编程的一些例子4
  9. CentOS 6.7平台Hadoop 1.2.1环境搭建
  10. 网络编程(学习整理)---1--(Tcp)实现简单的控制台聊天室
  11. LeeCode(Database)-Duplicate Emails
  12. C#中使用ref 和 out 的一点认识
  13. HALCON学习-资料
  14. 如何修改Recovery的字符串资源
  15. OKR20180607
  16. JVM栈和堆的详解
  17. git SourceTree 客户端 安装/使用教程
  18. 通过github安装crawley出现的问题
  19. Latex命令
  20. 理解Docker

热门文章

  1. overflow:scroll
  2. 思维导图MindManager属性功能怎么合理使用
  3. 利用MathType在Word里输入几何符号的技巧
  4. 使用axios实现登录功能
  5. ios中多线程GCD NSOperation NSThread 相关的操作解析
  6. JavaSE 学习笔记01丨开发前言与环境搭建、基础语法
  7. CentOS7.X 挂载磁盘 与Mysql 自动备份
  8. Python中__new__方法为什么有人说是构造方法?有什么作用?
  9. PyQt学习随笔:Model/View架构中的Delegate(委托)
  10. PHP代码审计分段讲解(2)