`

nginx 缓存简单配置

 
阅读更多

目的:缓存nginx服务器的静态文件。如css,js,htm,html,jpg,gif,png,flv,swf,这些文件都不是经常更新。便于缓存以减轻服务器的压力。
实现:nginx proxy_cache可以将用户的请缓存到本地一个目录,当下一个请求时可以直接调取缓存文件,就不用去后端服务器去取文件了。
配置:打开配置文件/usr/local/nginx/conf/nginx.conf

user www www;
worker_processes 2;
error_log /var/log/nginx_error.log crit;
worker_rlimit_nofile 65535;
events
{
use epoll;
worker_connections 65535;
}

http
{
include mime.types;
default_type application/octet-stream;

server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8m;

sendfile on;
tcp_nopush on;
keepalive_timeout 0;
tcp_nodelay on;

fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
##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_temp_path /home/temp_dir;
proxy_cache_path /home/cache levels=1:2 keys_zone=cache_one:200m inactive=1d max_size=30g;
##end##


gzip on;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_http_version 1.1;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_disable "MSIE [1-6]\.";

log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
upstream appserver {
server 192.168.1.251;
}
server {
listen 80 default;
server_name www.gangpao.com;
location ~ .*\.(gif|jpg|png|htm|html|css|js|flv|ico|swf)(.*) {
proxy_pass http://appserver;
proxy_redirect off;
proxy_set_header Host $host;
proxy_cache cache_one;
proxy_cache_valid 200 302 1h;
proxy_cache_valid 301 1d;
proxy_cache_valid any 1m;
expires 30d;
}
location ~ .*\.(php)(.*){
proxy_pass http://appserver;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}
access_log /usr/local/nginx/logs/www.gangpao.com.log;
}
}

红色部分是配置缓存的参数。
说明:
1、http段设置。
proxy_temp_path /home/temp_dir;设置临时目录
proxy_cache_path /home/cache levels=1:2 keys_zone=cache_one:200m inactive=1d max_size=30g;设置缓存目录为二级目录,共享内存区大小,非活动时间,最大容量,注意临时目录要跟缓存目录在同一个分区。
2、server段设置
请求静态文件设置。
proxy_cache cache_one;设置缓存共享内存区块,也就是keys_zone名称。
proxy_cache_valid 200 302 1h;设置http状态码为200,302缓存时间为1小时。
expires 30d;设置失期时间,为30天
请求动态文件设置。
proxy_pass http://appserver;不进行缓存,直接转到后端服务器。
测试:当客户端发起http请求时在服务器上会产一个缓存文件如

/home/cache/0/b9/8bd841b1c44ee5b91457eb561e44eb90


OK

分享到:
评论

相关推荐

    nginx简单的负载,缓存静态文件配置

    nginx配置文件nginx.conf ,主要标记了nginx 的负载配置upstream,静态资源缓存,是否开启压缩

    讲解Nginx服务器中设置本地浏览器缓存的简单方法

    主要介绍了Nginx服务器中设置本地浏览器缓存的简单方法,需要的朋友可以参考下

    nginx-cache-control:没有缓存清除模块的 Nginx 缓存控制插件

    nginx-缓存控制没有缓存清除模块的 Nginx 缓存控制插件部分代码是基于其他 Nginx Cache Plugins 的代码,但这是设计为简单、轻量级的实现== 具体.... == Mark Jaquith 提出了使用强制动态页面加载的标头的基本设计,...

    Nginx配置负载均衡和缓存详解

    简单介绍Nginx,实现负载均衡的配置和使用缓存存储静态资源文件,并可以通过purge模块删除缓存

    Nginx开发从入门到精通

    Nginx是一款高性能的Web服务器软件,它的发展已经走过了近20年的历程。从最初作为一个简单的HTTP服务器诞生,到...4. Nginx缓存机制:理解Nginx的缓存原理,配置缓存策略,实现浏览器和服务器端缓存,提高Web应用程序的性能。

    实战Nginx高性能Web服务器

    12、高性能Web服务器Nginx的配置与部署研究(12)应用模块之Memcached做文件缓存时压缩引起的问题 内容:续该系列博文中的第11篇,讲述Memcached使用时产生的问题,并分析原因所在。 13、高性能Web服务器Nginx的...

    Nginx配置文件结构.md

    无缓存的反向代理加速,简单的负载均衡和容错。 FastCGI,简单的负载均衡和容错。 模块化的结构。包括 gzipping, byte ranges, chunked responses,以及 SSI-filter 等 filter。如果由 FastCG或其它代理服务器处理单页...

    nginx+lua简要说明

    在互联网公司,Nginx可以说是标配组件,但是主要场景还是负载均衡、反向代理、代理缓存、限流等场景;而把Nginx作为一个Web容器使用的还不是那么广泛。Nginx的高性能是大家公认的,而Nginx开发主要是以C/C++模块的...

    详解nginx高并发场景下的优化

    今天这里简单梳理下nginx性能优化的配置(仅仅依据本人的实战经验而述,如有不妥,敬请指出~) 一、这里的优化主要是指对nginx的配置优化,一般来说nginx配置文件中对优化比较有作用的主要有以下几项: 1)nginx...

    运维-Nginx代理服务器-方向代理-负载均衡-数据缓存

    简单来说,就是把多条客户端的请求传给Nginx反向代理服务器,Nginx在把这些请求分别发送而给多个Web服务器,来减少直接对一个Web服务器造成的压力。 缓存数据:数据缓存是客户端第一次访问服务器的时候,nginx会把从...

    nginx(1-9-8).syno.tar官方镜像

    Nginx是用于HTTP,HTTPS,SMTP,POP3和IMAP协议的开源反向代理服务器,以及负载平衡器,HTTP缓存和Web服务器(原始服务器)。Nginx项目一开始就非常关注高并发,高性能和低内存使用。它获得了两节式BSD许可,并在...

    深入理解nginx模块开发和架构解析_经典文档

    2、作为代理服务器,Nginx可以实现无缓存的反向代理加速,提高网站运行速度 3、作为负载均衡服务器,Nginx既可以在内部直接支持Rails和PHP,也可以支持HTTP代理服务器对外进行服务,同时还支持简单的容错和利用算法...

    action_nginx_mem_cache:一个简单的Rails Action缓存过滤器,用于直接Nginx访问缓存

    这是一个简单的Rails插件,使用memcache进行操作缓存,并让nginx直接从memcache中提取缓存的页面。 因此,对缓存页面的请求甚至不会打到您的Rails应用服务器上。 它可能不适合所有人,但仍然可以作为实现满足您自己...

    Nginx安装包

    随后打开我们上次配置好的nginx,进入登录界面,进行登录步骤,我们就可以看到我们可能在tomcat1登录,进入tomcat2的个人中心,当然可能反之,刷新时个人中心页面,会看见两个tomcat的页面在间隔得显示,测试成功。...

    详解 Nginx 负载均衡和反向代理配置和优化

    Nginx 负载均衡和反向代理配置和优化 DNS 轮询方式: 介绍: DNS 轮询是指一个域名可以绑定到多个的 ip 服务器上, 用户在访问的时候 dns轮询访问这几个 ip 的服务器, 达到负载均衡的目的. 可以使用 linux 命令 dig ...

    nginx设置上传目录无执行权限的方法

    nginx上也很简单,我们使用location。。如下: 代码如下: location ~ ^/upload/.*\.(php|php5)$ { deny all; } 其中upload换为你要设置的目录名字 这条规则的含义是匹配请求连接中开头是/upload/,中间匹配任意字符...

    详解Nginx HTTP负载均衡和反向代理配置

    先前也用nginx配置过简单的代理,今天有时间把整合过程拿出来和大家分享,不过其中大部分也是网上找来的资源。 nginx完整的反向代理代码如下所示 : [root@data conf]# vim nginx.conf user www www; worker_...

    Nginx:影响高并发性能优化的主要参数配置(含Nginx运维标准文件)

    今天,我来简单总结、梳理下配置文件中影响 Nginx 高并发性能的一些主要参数: 1. worker_processes 6; nginx 进程数:建议设置为等于CPU总核心数(一般跟CPU核数相同或为它的倍数)。这里设置为多少,在进行top...

Global site tag (gtag.js) - Google Analytics