作者:天之苍 | 来源:互联网 | 2014-05-28 09:40
首先,配置nginx的主配置文件nginx.confhttp{段中添加proxy_cache_path/var/nginx/proxy_templevels1:2keys_zoneNAME:10m;gzip顺手打开。保存,新建虚拟主机配置文件,填入:server{listen80;server_name网站域名;pro
首先,配置
nginx的主配置文件
nginx.conf
http { 段中添加
proxy_cache_path /var/nginx/proxy_temp levels=1:2
keys_zOne=NAME:10m;
gzip顺手打开。
保存,新建虚拟主机配置文件,填入:
server {
listen 80;
server_name 网站域名;
proxy_temp_path /var/nginx/temp;
if ($http_Cache_COntrol= "no-cache") {
rewrite ^(.*)$ /purge$1 last;
}
location ~ /purge(/.*)
{
proxy_cache_purge NAME $host$1$is_args$args;
}
location / {
proxy_pass http://后端域名/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_cache NAME;
proxy_cache_key
$host$uri$is_args$args;
proxy_cache_valid 200 302 1h;
proxy_cache_valid 301 1d;
proxy_cache_valid any 1m;
}
}
注:proxy_cache_purge 需要 ngx_cache_purge 模块的支持。
http://labs.frickle.com/nginx_ngx_cache_purge/
编译nginx时需要将其编译进去:
./configure ?user=nginx ?group=nginx ?prefix=/usr/local/nginx
?with-http_stub_status_module ?with-http_ssl_module
?with-http_gzip_static_module ?with-ipv6 ?with-http_sub_module
?add-module=../ngx_cache_purge-1.3
ps. user和group以及purge版本请自己验证。
ps.2. 如果purge出404,一是检查cache_key,二是检查 purge 模块和 nginx
版本的对应关系。