1,环境介绍
linux:ubuntu 11.10 server
nginx:1.0.5(apt-get方式安装)
2,vim nginx.conf
在 http{……}中添加 如下
##cache##
proxy_connect_timeout 5;
proxy_read_timeout 60;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
proxy_cache_key $host$server_port$request_uri;
proxy_temp_path /data/cache/temp;
proxy_cache_path /data/cache/yy levels=1:2 keys_zone=yy:200m inactive=1d max_size=30g;
##end##
3,vim conf.d/cache.conf
server {
listen 80;
location / {
proxy_pass http://yy.ttpod.com;
}
location ~ .*\.(gif|jpg|png|jpeg|bmp|css|js|flv|ico|swf|zip|html|htm|txt)(.*) {
proxy_pass http://yy.ttpod.com;
proxy_redirect off;
proxy_set_header Host $host;
proxy_cache yy;
proxy_cache_valid 200 302 6h;
proxy_cache_valid 301 1d;
proxy_cache_valid any 1m;
expires 30d;
}
}
4,验证语法及重新加载配置
root@server-2:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
OK 通过
root@server-2:~# service nginx reload
Reloading nginx configuration: nginx.
重新加载配置 通过
5,测试
ps:wml页面
浏览器输入 http://8.0.0.2/
页面还加载 http://yy.ttpod.com/ 页面内容 通过
效果对比
图中三张图片,前两张图片由代理缓存服务器提供,第三张图片由源服务器提供
前两张图片不需要下载,第三张图片需要重新下载
由代理缓存服务器提供的图片,被设置了缓存时间,发送请求的时间还未过期,故浏览器不会重新下载