标签:
简介:nginx proxy_store缓存的结果,就是按照服务器的目录设置,直接缓存文件到同样的目录,像镜像一样。
遇到的问题:当服务器需要缓存的文件过大,恰巧此时没有缓存,但是有很多用户同时访问此文件的话,会出现生成很多,临时缓存文件(如000000132)的情况,针对同一个文件的临时缓存各个用户之间是不会共享的,因此会生成很多的临时文件,总的临时文件加载一起有10nG,也不是没有可能,影响nginx正常缓存。如果遇到此种情况,那么就执行下面的命令手动清除吧。
[root@HOST]#rm -rf [缓存文件的路径]/*
如果缓存文件过多也可以执行上面的命令。如果要定时清理,那么就把这条命令写入脚本(如clear-cache.sh)然后
[root@HOST]#crontab -e
***/3**/root/clear-cache.sh
一、获取安装包
获取安装包: wget http://nginx.org/download/nginx-1.7.9.tar.gz
二、安装nginx
[root@HOST]# tar -xvzf nginx-1.7.9.tar.gz
[root@HOST]# cd nginx-1.7.9
[root@HOST]# ./configure --prefix=/usr/local/nginx
[root@HOST]# make
[root@HOST]# make install
三、配置nginx(主要添加加粗字体部分)
[root@HOST]cd /usr/local/nginx
[root@HOST]vi ./conf/nginx.conf
用加粗字体替换掉原来的部分
events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; server { listen 8065; server_name localhost; location / { expires 3d; proxy_set_header Accept-Encoding ‘‘; root /home/mpeg/nginx; proxy_store on; proxy_store_access user:rw group:rw all:rw; proxy_temp_path /home/mpeg/nginx; if ( !-e $request_filename) { proxy_pass http://192.168.0.1; } } } }
四、说明
/********************************************* 此段为注释: ---------------------------------------------- location / { //这里的location是要换成自己经过精确匹配的location,比如要缓存图片要写成 "location ~*\.(gif|jpg|jepg|png|bmp)${" expires 3d; //所有链接,浏览器缓存过期时间为3天 proxy_set_header Accept-Encoding ‘‘; root /home/mpeg/nginx; //此目录为服务器的根目录,下面的if语句就是判断此目录下是否有响应的文件 proxy_store on; //表示开启缓存 proxy_store_access user:rw group:rw all:rw; //表示用户读写权限,如果在error中报路径不允许访问的话就用"chomod -R a+rw"将下面配置的路径改为相应的权限. proxy_temp_path /home/mpeg/nginx; //此处为文件的缓存路径,这个路径是和url中的文件路径一致的,url中?后面的部分不作为路径或文件名参考 if ( !-e $request_filename) { proxy_pass http://192.168.0.1; //此处为要被代理的服务器的地址 } } **********************************************
标签:
原文地址:http://www.cnblogs.com/bugutian/p/4506763.html