Web缓存的定义.

Web缓存位于内容源Web服务器和客户端之间,当用户访问一个URL时,Web缓存服务器会去后端Web源服务器取回要输出的内容,然后,当下一个请求到来时,如果访问的是相同的URL,Web缓存服务器直接输出内容给客户端,而不是向源服务器再次发送请求.Web缓存降低了内容源Web服务器,数据库的负载,减少了网络延迟,提高了用户访问的响应速度,增强了

NGINX 配置

语法 :

proxy_cache_path path [levels=number] keys_zone=zone_name:zone_size[inactive=time] max_size=size]

path 存放目录
levels 指定该缓存空间有两层hash目录,第一层目录为1个字母,第二层目录为2个字母,保存的文件名会类似/data0/proxy_cache_dir/c/29/XXXXXX ;
keys_zone参数用来为这个缓存区起名.
zone_size指内存缓存空间大小
inactive的1d指如果缓存数据在1天内没有被访问,将被删除
max_size的30g是指硬盘缓存空间为30G

http{
    proxy_cache_path /home/datacache levels=1:2 keys_zone=datacache:20m max_size=1g;
    server
    {
        listen 80;
        server_name xxx.com;
        index index.html index.php;
        location ~ \.php$ {
            proxy_pass   http://127.0.0.1:8080;
        }
        location / {
                proxy_pass      http://127.0.0.1:8080;
                proxy_set_header  X-Real-IP  $remote_addr;
                proxy_cache datacache;
                proxy_cache_valid 200 10m;
        }
    }
    server
    {
        listen 8080;
        server_name xxx.com;
        index index.html index.php;
        access_log  /home/wwwroot/xxx.com/access.log  access;
        root  /home/wwwroot/xxx.com/public_html;
    }
}

以上配置实现 php文件回源访问, 其他文件缓存处理