Nginx - 禁用XHR请求的缓存

时间:2016-10-06 20:48:34

标签: apache caching nginx

当入站请求是带有nginx的XHR(ajax)时(如果可能,对于Apache),如何禁用缓存?

XHR有这个https标题:

X-Requested-With : XMLHttpRequest

由于

2 个答案:

答案 0 :(得分:4)

对于nginx,请尝试以下代码,

...
set $no_cache 0;
...
if ($http_x_requested_with ~* 'XMLHttpRequest') {
   set $no_cache 1;
}
...
location ~ \.php$ {
   ...
   fastcgi_no_cache $no_cache;
   ...
}
...

参考文献:Learn to implement caching in Nginxfastcgi_no_cache

答案 1 :(得分:0)

It is generally a good idea to avoid if in nginx configuration files whenever possible。如果您有任何方法来调整发送请求的前端,请尝试将当前时间添加为GET变量(例如myhost/?1475834405)。由于之前未请求该URL,因此不会使用缓存。