反向代理中的Nginx.conf缓存配置

Nginx缓存功能的优点
对于修改实时性要求不高的图片、Flash、CSS样式文件、JavaScript文件,可以在Nginx反向代理(负载均衡)服务器上设置缓存,不用每次请求都转发到后端Web服务器,加快了响应速度。
减少了Nginx与后端Web服务器的连接数,提高了Nginx处理性能。

反向代理中的Nginx.conf缓存配置

……

#设置Web缓存区名称为cache_one,缓存空间大小为2000MB,1天清理一次缓存,单个文件超过5m不缓存。

proxy_cache_path /data0/proxy_cache_path levels=1:2 keys_zone=cache_one:2000m inactive=1d max_size=5m;

#注:proxy_temp_path和proxy_cache_path指定的路径必须在同一分区

proxy_temp_path /data0/proxy_temp_path;

upstream my_server_pool {

server 192.168.1.2:80 weight=1 max_fails=2 fail_timeout=30s;

server 192.168.1.3:80 weight=1 max_fails=2 fail_timeout=30s;

}

……

server

{

listen 80;

server_name my.domain.com;

location /

{

proxy_set_header Host $host;

proxy_set_header X-Forwarded-For $remote_addr;

proxy_pass http://my_server_pool;

}

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$

{

#对图片、JS、CSS进行缓存,使用Web缓存区cache_one

proxy_cache cache_one;

#对不同HTTP状态码缓存设置不同的缓存时间

proxy_cache_valid 200 10m;

proxy_cache_valid 304 3m;

proxy_cache_valid 301 302 1h;

proxy_cache_valid any 1m;

#设置Web缓存的Key值,Nginx根据Keymd5哈希存储缓存,这里根据“域名、URI、客户端请求Header头中的If-Modified-Since信息”组合成Key

proxy_cache_key $host$request_uri$http_if_modified_since;

#反向代理,访问后端内容源服务器

proxy_set_header Host $host;

proxy_set_header X-Forwarded-For $remote_addr;

proxy_pass http://my_server_pool;

}

access_log off;

}


你可能感兴趣的:(nginx,nginx反向代理)