如何确认 Nginx 缓存代理正常工作

如何确认 Nginx 缓存代理正常工作

我在同一台服务器上的端口 80 上有 nginx,端口 8080 上有 apache。

我已经使用本教程将 nginx 配置为充当反向代理(我不确定它是否有效)ttp://tumblr.intranation.com/post/766288369/using-nginx-reverse-proxy。

我遵循的步骤来验证代理。

  • 在5秒的间隔内,在两台不同的机器上打开同一个页面。

但在 apache access.log 中每个请求都显示200 响应代码这是否表明缓存不起作用?

并且 nginx access.log 没有显示任何内容。

答案1

您所参考的教程与 nginx 缓存无关。因此,如果您的配置与教程中的配置相似,则 nginx 缓存肯定不起作用。

但一般来说,nginx 有特殊的变量:

$upstream_cache_status — 保存访问响应缓存的状态(0.8.3)。状态可以是“MISS”、“BYPASS”、“EXPIRED”、“STALE”、“UPDATING”或“HIT”。

http://nginx.org/en/docs/http/ngx_http_upstream_module.html#variables

你可以用这个变量做任何你想做的事情(例如将其记录到访问日志中, 或者将其与响应标头一起返回)。

相关内容