我将nginx
配置如下:
proxy_cache_path /v01/nginx levels=1:2 keys_zone=my_zone:10m inactive=60m;
proxy_cache_key "$scheme$request_method$host$request_uri";
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.html index.htm;
charset utf-8;
server_name localhost;
location / {
client_max_body_size 2M;
proxy_cache my_zone;
proxy_cache_bypass $http_cache_control;
add_header X-Proxy-Cache $upstream_cache_status;
include proxy_params;
proxy_pass http://localhost:3000;
}
}
我在一台安装了nginx/1.4.6 (Ubuntu)
的机器中配置了这个,我测试了:
curl -X GET -I 192.168.1.193/css/style.css
它有效,头部为X-Proxy-Cache: HIT
。
但我在安装nginx/1.6.2 (Ubuntu)
,curl -X GET -I 192.168.1.97/css/style.css
的另一台计算机上配置了这个,总是返回X-Proxy-Cache: MISS
。
我检查了路径/v01/nginx
,它没有任何内容。
答案 0 :(得分:0)
我找到了问题所在:
我没有在另一台机器的项目中设置node.js缓存,我改变了
app.use express.static config.root + '/public'
到
app.use express.static config.root + '/public', {maxAge: 1000 * 3600 * 24 * 7}