目的:缓存nginx服务器的静态文件。如css,js,htm,html,jpg,gif,png,flv,swf,这些文件都不是经常更新。便于缓存以减轻服务器的压力。
实现: nginxproxy_cache可以将用户的请缓存到本地一个目录,当下一个请求时可以直接调取缓存文件,就不用去后端服务器去取文件了。
配置: 打开配置文件/etc/nginx/nginx.conf
user www www;
worker_processes 2;
error_log /var/log/nginx/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:2keys_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 blog.slogra.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 /var/log/nginx/blog.slogra.com.log;
}
}
红色部分是配置缓存的参数。
说明:
1、http段设置。
proxy_temp_path /home/temp_dir;设置临时目录
proxy_cache_path /home/cache levels=1:2 keys_zone=cache_one:200minactive=1dmax_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、设置 HTTP 头部过期时间,用 Cache-Control 中的 max-age 标记为静态文件(比如图片、 CSS 和 Javascript 文件)设置一个时间,这样用户的浏览器就会缓存这些文件。这样能节省...
因为静态文件(比如css,js, 图片)中,很多都是不经常更新的。nginx使用proxy_cache将用户的请求缓存到本地一个目录。下一个相同请求可以直接调取缓存文件,就不用去请求服务器了。 毕竟,IO密集型服务的处理是...
nginx代理做好了,缓存也配置好了,但是发现css、js、jpg这些静态文件统统都cached成功。但是偏偏页面文件依旧到源服务器取
浏览器缓存是为了提高加载速度,因此我们可以通过Nginx对静态文件进行缓存。 location ~ ^/(images|javascript|js|css|flash|media|static)/ { #过期30天 expires 30d; } 定义错误提示页面 error_page 500 502 ...
主要介绍了Nginx服务器实现数据静态压缩的方法,服务器中压缩CSS和JavaScript进行缓存一定程度上可以帮助提高服务器的IO速度,需要的朋友可以参考下
它还添加标头以缓存 CSS、JS 和媒体,以便通过减少对 Web 服务器的请求来利用浏览器的缓存。 该项目由位于加拿大蒙特利尔附近的SatelliteWP 赞助。 我们的服务以英语和法语提供。 SatelliteWP fait de 。 贡献者 ...
location ~* \.(css|js|jpg|jpeg|gif|png|swf|htm|html|json|xml|svg|woff|ttf|eot|map|ico|woff2|apk)$ { proxy_cache_valid 200 304 4h; expires 4h; } proxy_set_header Host $host; proxy_set_header X-...
它通过安装和配置流行的Nginx Web服务器来充当静态文件(如CSS,JS,图像等)的反向缓存代理,并带有附加的微缓存层来实现此目的,从而显着提高WordPress等CMS生成的动态内容的性能,Joomla或Drupal以及论坛软件...
1、前端优化:活动开始前生成静态商品页面推送缓存和CDN,静态文件(JS/CSS)请求推送至文件服务器和CDN。 2、网络优化:如果是全国用户,最好是BGP多线机房,减少网络延迟。 3、应用服务优化:Nginx最佳配置、Tomcat...
Liblog还支持整站静态网页生成,同时有发布相关的配置,使用nginx做反向代理,动静态资源分离,静态缓存等,使您发布后的博客访问秒开。 二.功能特点 一键导入Markdown文章 文章评论 代码高亮 文章内容...
集成django-compressor,自动压缩css,js。 网站异常邮件提醒,若有未捕捉到的异常会自动发送提醒邮件。 集成了微信公众号功能,现在可以使用微信公众号来管理你的vps了。 安装 mysql客户端从pymysql修改成了...
-js ---javascript脚本目录 -|jquery.js ---jquery脚本文件 -|main.js ---主程序脚本 |memcache.class.php ---memcache数据库缓存加速类 |next_run.php ---暂无具体功能 -r ---URL重定向目录 -|httpd.ini ---...
31、后台设置可以设置静态文件使用cdn镜像 32、精简前台使用的zui库 33、修改导出的钩子文件里面的方法名,不再关联主题code命名 34、实现权限可以实时生效 35、留言增加手机号一项信息 36、代码提供nginx的配置文件...
07 django静态文件之static 08 django的url控制系统 09 django的urlConf补充 第50章 01 django之视图函数的介绍 02 django视图之redirec 03 django模板之变量 04 django模板之过滤器 05 django模板之控制语句if和...
修改根目录下“.htaccess.idc”文件名为:“.htaccess” 3、 访问您的域名进行首次安装 4、 填写数据库信息(为了您服务器安全,请不要使用root账号) 建立数据库并下一步 5、 配置代理平台API连接信息 1...
修改根目录下“.htaccess.idc”文件名为:“.htaccess” 3、 访问您的域名进行首次安装 4、 填写数据库信息(为了您服务器安全,请不要使用root账号) 建立数据库并下一步 5、 配置代理平台API连接信息 1...
库字节码 该存储库包含静态站点生成器和内容。 发电机 生成器主要包含在。 大部分繁重的工作都是通过自定义图形构建系统完成的,并,该... 这些已针对安全性和CSS的浏览器缓存进行了优化。 最初,我是使用NGINX在Digita
无需手动配置nginx,该应用程序的服务器已完成所有操作: 资产(IMG,JS和CSS)会自动缓存在浏览器中当访问生成的静态页面时,应用程序将检查自客户端上次访问以来页面是否已更新:如果未返回304,如果是则返回200...
1、前端优化:活动开始前生成静态商品页面推送缓存和CDN,静态文件(JS/CSS)请求推送至文件服务器和CDN。 2、网络优化:如果是全国用户,最好是BGP多线机房,减少网络延迟。 3、应用服务优化:Nginx最佳配置、Tomcat...