码迷,mamicode.com
首页 > 系统相关 > 详细

nginx的文件cache服务配置记录(proxy_cache)

时间:2017-08-21 12:42:09      阅读:393      评论:0      收藏:0      [点我收藏+]

标签:cli   war   gre   connect   referer   level   push   cal   ota   

 

根据业务部门需求,申请一台文件的cache服务器。如下记录在单台机器上部署Nginx缓存服务过程:

nginx缓存配置(缓存配置的参数这里就不做过多解释了,在前面的文档中已说明过,这里只做简单记录)

[root@storage01 ~]# cat /data/nginx/conf/nginx.conf|grep -v "^$"|grep -v "#"
user  www;
worker_processes  8;
  
events {
    worker_connections  65535;
}
  
http {
    include       mime.types;
    default_type  application/octet-stream;
    charset utf-8;
 
    log_format  main  ‘$http_x_forwarded_for $remote_addr $remote_user [$time_local] "$request" ‘
                      ‘$status $body_bytes_sent "$http_referer" ‘
                      ‘"$http_user_agent" "$http_cookie" $host $request_time‘;
    sendfile       on;
    tcp_nopush     on;
    tcp_nodelay    on;
    keepalive_timeout  65;
 
    proxy_temp_path /data/nginx/proxy_temp;
    proxy_cache_path /data/nginx/proxy_cache levels=1:2 keys_zone=cache_one:500m inactive=1d max_size=30g;
     
    client_header_timeout 600s;
    client_body_timeout 600s;
  
    client_max_body_size 50m;             
    client_body_buffer_size 256k;           
  
    gzip  on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.1;
    gzip_comp_level 9;
    gzip_types       text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php;
    gzip_vary on;
  
    include vhosts/*.conf;
}


注意:缓存目录/proxy_cache和/proxy_temp一定要在同一个分区下,并且权限一定要和nginx程序权限一致(即要有写入权限,否则不能生产缓存文件)!
[root@storage01 ~]# mkdir /data/nginx/proxy_cache
[root@storage01 ~]# mkdir /data/nginx/proxy_temp
[root@storage01 ~]# chown -R www.www /data/nginx/proxy_cache
[root@storage01 ~]# chown -R www.www /data/nginx/proxy_temp   

[root@storage01 ~]# cat /data/nginx/conf/vhosts/img.conf
server {
     listen       80;
     server_name  img.wang.com;

     access_log  /data/nginx/logs/img-access.log main;
     error_log  /data/nginx/logs/img-error.log;

     location / {
         index index.html index.htm;
         root /data/img/;
         proxy_cache cache_one ;
         proxy_cache_valid 200 304 12h ;
         proxy_cache_valid 301 302 1m ;
         proxy_cache_valid any 1m ;
         proxy_cache_key $host$uri$is_args$args;
        }
  
    location ~ /purge(/.*) {
      allow all ;
      proxy_cache_purge cache_one $host$1$is_args$args ;
      error_page 405 =200 /purge$1;
    }
}

[root@storage01 ~]# /data/nginx/sbin/nginx -t
nginx: the configuration file /data/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /data/nginx/conf/nginx.conf test is successful
[root@storage01 ~]# /data/nginx/sbin/nginx 

[root@storage01 ~]# ll -d /data/img
drwxr-xr-x 3 www www 4096 Aug 21 10:06 /data/img
[root@storage01 ~]# ll /data/img
total 8
drwxr-xr-x 2 www www 4096 Aug 21 10:30 image
-rwxr-xr-x 1 www www   31 Aug 16 15:44 index.html
[root@storage01 ~]# ll /data/img/image/
total 20
-rwxr-xr-x 1 www www 19270 Aug 15 19:50 wang.png

[root@storage01 ~]# cat /data/img/index.html 
缓存服务器!!!!!

访问

技术分享

技术分享

查看缓存文件

[root@storage01 ~]# ll /data/nginx/proxy_cache/
total 12
drwx------ 3 www www 4096 Aug 21 10:20 0
drwx------ 3 www www 4096 Aug 21 10:14 e
drwx------ 3 www www 4096 Aug 21 10:15 f
[root@storage01 ~]# ll /data/nginx/proxy_cache/e
total 4
drwx------ 2 www www 4096 Aug 21 10:29 e3            

上面缓存文件的结构是由levels=1:2决定的,即第一层目录是一个字母命名,第二层目录是两个字母表示

清理缓存

 

nginx的文件cache服务配置记录(proxy_cache)

标签:cli   war   gre   connect   referer   level   push   cal   ota   

原文地址:http://www.cnblogs.com/kevingrace/p/7403655.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!