nginx添加镜像缓存 proxy_store(未完待续)
简介:nginx proxy_store缓存的结果,就是按照服务器的目录设置,直接缓存文件到同样的目录,像镜像一样。
遇到的问题:当服务器需要缓存的文件过大,恰巧此时没有缓存,但是有很多用户同时访问此文件的话,会出现生成很多,临时缓存文件(如000000132)的情况,针对同一个文件的临时缓存各个用户之间是不会共享的,因此会生成很多的临时文件,总的临时文件加载一起有10nG,也不是没有可能,影响nginx正常缓存。如果遇到此种情况,那么就执行下面的命令手动清除吧。
[root@HOST]#rm -rf [缓存文件的路径]/*
如果缓存文件过多也可以执行上面的命令。如果要定时清理,那么就把这条命令写入脚本(如clear-cache.sh)然后
[root@HOST]#crontab -e ***/**/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 ;
}
http {
include mime.types;
default_type application/octet-stream;
server {
listen ;
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; //此处为要被代理的服务器的地址
}
}
**********************************************
nginx添加镜像缓存 proxy_store(未完待续)的更多相关文章
- SpringBoot---数据缓存(未完待续)
1.概述 1.1 在Spring中使用缓存的关键是配置CacheManager,而SpringBoot为我们自动配置了多个CacheManager的实现: 1.2 SpringBoot的CacheMa ...
- Spring---数据缓存(未完待续)
1.为什么需要数据缓存? 程序的瓶颈大都在数据库,而内存的速度是远远大于硬盘的,当我们需要重复读取相同数据时,一次又一次的请求数据库或者远程服务,导致大量的时间浪费在数据库或者 远程服务上,导致程序性 ...
- virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续)
virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续) 第一次接触到 linux,不知道linux的确很强大,然后用virtualbox ...
- Hibernate二级缓存(未完待续)
1.Hibernate的cache介绍: Hibernate实现了良好的Cache机制,可以借助Hibernate内部的Cache迅速提高系统的数据读取性能.Hibernate中的Cache可分为两层 ...
- git安装与使用,未完待续... ...
目录 一.git概念 二.git简史 三.git的安装 四.git结构 五.代码托管中心-本地库和远程库的交互方式 六.初始化本地仓库 七.git常用命令 1.add和commit命令 2.sta ...
- Go web编程学习笔记——未完待续
1. 1).GOPATH设置 先设置自己的GOPATH,可以在本机中运行$PATH进行查看: userdeMacBook-Pro:~ user$ $GOPATH -bash: /Users/user/ ...
- 关于DOM的一些总结(未完待续......)
DOM 实例1:购物车实例(数量,小计和总计的变化) 这里主要是如何获取页面元素的节点: document.getElementById("...") cocument.query ...
- 我的SQL总结---未完待续
我的SQL总结---未完待续 版权声明:本文为博主原创文章,未经博主允许不得转载. 总结: 主要的SQL 语句: 数据操作(select, insert, delete, update) 访问控制(g ...
- MVC丶 (未完待续······)
希望你看了此小随 可以实现自己的MVC框架 也祝所有的程序员身体健康一切安好 ...
随机推荐
- iOS设计模式之中介者模式
中介者模式 基本理解 中介者模式又叫做调停者模式,其实就是中间人或者调停者的意思. 尽管将一个系统分割成许多对象通常可以增加可复用性,但是对象之间的连接又降低了可复用性. 如果两个类不必彼此直接通信, ...
- Git使用之设置SSH Key
设置SSH Key 1. 检查是否已经有SSH Key. $cd ~/.ssh 如果说没有这个目录,就直接看第三步 2. 备份 3. 生成一个新的SSH. $ssh-keygen - ...
- 明明已经执行Log.i,偏偏打不出日志
Android内打日志用的当然是Log.i(tag,string),调试时的日志输出可以很快的反映一些问题,方便我们跟进. 但是如果连日志都打不出来了怎么办呢,我今天就遇到了比较坑的问题.项目里别的日 ...
- XCode中#pragma的使用
为了能够快速定位到代码的目标位置,可以使用#pragma:
- DEV主从表
1.主从表隐藏表格展开按钮. 当主表内容不包含子表时候隐藏,主从表加号图标.效果如下图. 实现代码 private void gvMain_CustomDrawCell(object sender, ...
- fastCGI与PHP-fpm
fastCGI是nginx和php之间的一个通信接口,该接口实际处理过程通过启动php-fpm进程来解析php脚本,即php-fpm相当于一个动态应用服务器,从而实现nginx动态解析php.因此,如 ...
- Asp.net mvc中的Ajax处理
在Asp.net MVC中的使用Ajax, 可以使用通用的Jquery提供的ajax方法,也可以使用MVC中的AjaxHelper. 这篇文章不对具体如何使用做详细说明,只对于在使用Ajax中的一些需 ...
- C# 日志框架的添加
.NET中 记录日志的比较好的主要是Log4Net和Enterprise Library的Logging 复杂一点的还可以实现自动化Log日志 教程 首先是第二种方式 1.需要添加以下几个DLL 下 ...
- ASP.NET 使用Ajax(转)
之前在Ajax初步理解中介绍了对Ajax的初步理解,本文将介绍在ASP.NET中如何方便使用Ajax,第一种当然是使用jQuery的ajax,功能强大而且操作简单方便,第二种是使用.NET封装好的Sc ...
- PL/SQL之--变量
一.PL/SQL 简介 PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL).PL/SQL是oracle对sql语句的一种扩展,在普通SQL语句的使用上 ...