• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >windows > nginx web缓存配置

nginx web缓存配置

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含nginx web服务器配置,nginx web,nginx web server,nginx web目录,the nginx web server等服务器相关知识,网友希望可以进行参考

1.场景:使用proxy_cache缓存web静态内容文件和通过rewrite伪静态化后的html整页面缓存。

动态内容通过Ajax动态获取,也保持内容一致。

2.nginx 配置

a.添加缓存文件保存路径

vi /etc/nginx/nginx.conf

#注:proxy_temp_path和proxy_cache_path指定的路径必须在同一分区
proxy_temp_path /cache/proxy_temp_path;

#设置Web缓存区名称为cache_one,内存缓存空间大小为200MB,1天没有被访问的内容自动清除,硬盘缓存空间大小为30GB。

proxy_cache_path /cach/proxy_cache_path levels=1:2 keys_zone=cache_one:200m inactive=5m max_size=30g;


b.添加缓存配置


location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css|html)$

{

#如果后端的服务器返回502、504、执行超时等错误,自动将请求转发到upstream负载均衡池中的另一台服务器,实现故障转移。
proxy_next_upstream http_502 http_504 error timeout invalid_header;

proxy_cache cache_one;
#进行缓存,使用Web缓存区cache_one

proxy_cache_valid 200 304 5m;
#对不同的HTTP状态码设置不同的缓存时间

proxy_cache_valid 301 302 1m;
proxy_cache_valid any 1m;
proxy_cache_key $host$uri$is_args$args;
#以域名、URI、参数组合成Web缓存的Key值,Nginx根据Key值哈希,存储缓存内容到二级缓存目录内
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Accept-Encoding "none";
#设定proxy_set_header Accept-Encoding '';或是后台服务器关闭gzip),这样这台机器才不会缓存被压缩的文件,造成乱码
#proxy_set_header Accept-Encoding ""; 这个也可

proxy_ignore_headers "Cache-Control" "Expires";
#这段配置加上后,proxy_cache就能支持后台设定的expires。


if ( !-e $request_filename )

{
proxy_pass http://emulsites;
}

expires 30m;

}


#php文件请求转发给后端
location ~ .*\.(php|cgi)?$
{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://emulsites;
}


3.重载nginx

sudo service nginx reload


访问页面,查看缓存目录是否生成缓存文件






分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • nginx web缓存配置

相关文章

  • apache python 模块mod_wsgi的编译安装
  • 关于VirtualBox的端口映射的那一点事儿
  • Windows Server 2008服务器系统数据安全
  • Linux Squid代理之普通代理
  • windows2003服务器一招废掉所有木马
  • Windows查看端口被占用的程序命令(80端口为例)
  • IIS出现“目前访问网站的用户过多”解决方法
  • Zabbix 之snmp配置
  • CentOS中自定义yum仓库和配置文件
  • windows 2003 Gene6 FTP Server 新建域/帐户

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • 一个IO的传奇一生 (6) --
    • Windows2003中让php加载curl.dll和mcrypt 模块
    • Windows 2003:提高FSO的安全性
    • windows服务器手工杀毒常用命令
    • Mac OS X/windows下启用Mod Rewrite和.htaccess
    • htpasswd添加用户
    • 恢复电脑默认设置的方法与操作步骤
    • iis rewrite伪静态中文无效问题解决方法
    • 华为数据中心:融合方案也分层次
    • windows2003 取消登陆组合键Ctrl+Alt+Delete

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有