我当前正在将Nginx与NodeJs一起使用,并且试图编辑nginx.conf文件以允许缓存。
在下面的当前设置下,我可以使用SSL和GZIP,但是如何添加缓存?我收到错误404。我的文件具有以下结构:/ root / Poplive / Dec5 / public
在公共场合,我有一个文件(main-built.js)和文件夹(/ javascripts | / css),这些是我尝试缓存的文件和文件夹。
我试过了...
1)我将指令放在下面的nginx.conf中的位置/ {}下
location ~* /.*\.(/javascripts|main-built.js)$ {
expires 24h;
}
结果,没有缓存,但是GZIP可以工作
下面的Nginx.conf
events { worker_connections 1024; }
http {
upstream myapp {
server 127.0.0.1:3100;
}
#Add Gzip
sendfile on;
keepalive_timeout 2;
tcp_nodelay on;
gzip on;
gzip_http_version 1.1;
gzip_vary on;
gzip_comp_level 5;
gzip_proxied any;
gzip_types text/plain text/css application/json json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript;
gzip_buffers 16 8k;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
server {
root /Poplive/Dec5/public;
ssl_certificate /root/Poplive/Dec5/server.crt;
ssl_certificate_key /root/Poplive/Dec5/server.key;
listen 80;
listen 443 ssl;
if ($ssl_protocol = "") {
rewrite ^ https://$host$request_uri? permanent;
}
server_name poplive.co;
location / {
location ~* /.*\.(/javascripts|main-built.js)$ {
expires 24h;
}
proxy_set_header X-FORWARDED-PROTO https;
proxy_pass http://myapp/;
}
}
}