参考:http://www.cnblogs.com/GXLo/articles/5169098.html

一.准备

1.一台后端服务器,已安装Apache服务器,/var/www/html下已放置了一张图片head.jpg,IP为192.168.1.105

2.一台服务器,用来安装nginx,当做缓存服务器,IP为192.168.1.109

二、 Nginx(Ngx_cache)安装:

首先下载Nginx缓存模块,ngx_cache_purge相应版本,这里下载nginx-1.4版本,不同版本对应不同的Nginx版本,安装的时候要留心。

ulimit -SHn 65535
yum install pcre pcre-devel -y
wget http://nginx.org/download/nginx-1.0.11.tar.gz
http://labs.frickle.com/files/ngx_cache_purge-1.4.tar.gz
tarz xvf ngx_cache_purge-1.4.tar.gz
tarz xvf nginx-1.0.11.tar.gz
useradd www
cd nginx-1.0.11/
./configure  --user=www  --group=www  --add-module=../ngx_cache_purge-1.4--prefix=/usr/local/nginx  --with-http_stub_status_module  --with-http_ssl_module
make && make install

配置文件内容nginx.conf:

user  www www;
worker_processes 8;
error_log  /usr/local/nginx/logs/nginx_error.log  crit;
pid       /usr/local/nginx/nginx.pid;
worker_rlimit_nofile 65535;
events
{use epoll;worker_connections 65535;
}
http
{include       mime.types;default_type  application/octet-stream;charset  utf-8;server_names_hash_bucket_size 128;client_header_buffer_size 32k;large_client_header_buffers 4 32k;client_max_body_size 300m;sendfile on;tcp_nopush     on;keepalive_timeout 60;tcp_nodelay on;client_body_buffer_size  512k;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;gzip on;gzip_min_length  1k;gzip_buffers     4 16k;gzip_http_version 1.1;gzip_comp_level 2;gzip_types       text/plain application/x-javascript text/css application/xml;gzip_vary on;#这里设置缓存目录,为/data/proxy_temp,/data/proxy_cacheproxy_temp_path   /data/proxy_temp;proxy_cache_path  /data/proxy_cache  levels=1:2   keys_zone=cache_one:200m inactive=1d max_size=1g;upstream backend_server {server 192.168.1.105:80;}server{listen       80;server_name  127.0.0.1;location /{proxy_set_header Host  $host;proxy_set_header X-Forwarded-For  $remote_addr;proxy_pass http://backend_server;}location ~ .*\.(gif|jpg|jpeg|bmp|png|js|css|swf)?$     //缓存文件类型{proxy_cache cache_one;proxy_cache_valid 200 304 12h;proxy_cache_valid 301 302 1m;proxy_cache_valid any 1m;proxy_cache_key $host$uri$is_args$args;proxy_set_header Host  $host;proxy_set_header X-Forwarded-For  $remote_addr;proxy_pass http://backend_server;}location ~ /purge(/.*){allow            127.0.0.1;deny            all;proxy_cache_purge    cache_one   $host$1$is_args$args;}access_log  off;}
}

###########################################################################################

说明

Nginx缓存服务器的配置主要通过proxy_cache相关命令来实现。

proxy_cache_path /backup/proxy_cache_dir levels=1:2 keys_zone=cache_one:4096m inactive=1d max_size=3g;

- poxy_cache_path:用于设置缓存的目录,后面跟缓存路径。最好将缓存目录放在一个独立的硬盘上。

- levels=1:2:levels用来设置目录深度,这里是两层目录深度,第一层是一个字符,第二层是两个字符。

- keys_zne:用来设置web缓存区名称,这里的cache_one后面的4096,表示内存缓存空间大小为4GB

- inactive:表示自动清除缓存文件的时间,这里的“d”表示1天没有被访问的内容自动清除,还可以使用分钟和小时计数,5m,5h。

- max_size:表示硬盘缓存空间可使用的最大值,默认情况下经访问的文件常将被放到内存中进行缓存,而在内存缓存空间不足时,Nginx会将不经常访问的数据从内存写到磁盘。

proxy_temp_path /backup/proxy_temp_dir;

- 用于指定临时缓存文件的存储路径,这里需要注意的是,两个存放缓存文件的目录必须在同一磁盘分区。

三、实验验证

前面提到,已经将一个图片文件head.jpg放置在192.168.1.105的后端服务器的/var/www/html下,启动Apache,Nginx配置好之后也需要启动;

1.在此情况下,先访问http://192.168.1.109/head.jpg,能访问到,此时apache和nginx均启动;

2.关闭后台apache,nginx保持开启,访问http://192.168.1.109/head.jpg,可见的情况是head.jpg还能访问到;去/data/proxy_temp和/data/proxy_cache下能发现生成的缓存文件;

转载于:https://blog.51cto.com/825536458/1890157

nginx缓存服务器相关推荐

  1. 使用nginx缓存服务器上的静态文件

    一.nginx缓存的优点 如图所示,nginx缓存,可以在一定程度上,减少源服务器的处理请求压力. 因为静态文件(比如css,js, 图片)中,很多都是不经常更新的.nginx使用proxy_cach ...

  2. linux nginx 缓存服务器,如何开启Nginx缓存

    众所周知,Nginx是一个高性能的web服务器,尤其在高并发和处理静态页面的时候有先天的优势:很大一部分得益于缓存的开启,那么如何开启nginx的缓存呢. 简单来说可以分两步: 1.定义缓存存储目录并 ...

  3. nginx服务器默认的缓存文件,配置Nginx 缓存服务器

    @import url(http://www.blogjava.net/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxH ...

  4. Nginx 缓存服务器

    proxy_cache_key过滤请求参数 为一个响应较慢的服务设置缓存,但是应用请求统一规范要求以timestamp作为参数.因为缓存以请求路径加参数/api/path?param=value&am ...

  5. linux nginx 缓存服务器,linux nginx 图片缓存服务器

    弹性云服务器 ECS 弹性云服务器(Elastic Cloud Server)是一种可随时自助获取.可弹性伸缩的云服务器,帮助用户打造可靠.安全.灵活.高效的应用环境,确保服务持久稳定运行,提升运维效 ...

  6. memcache缓存服务器(nginx php memcache mysql)

    memcache缓存服务器(nginx php memcache mysql) 环境: 192.168.1.23  nginx+php 192.168.1.28  memcache 192.168.1 ...

  7. nginx反向代理缓存服务器构建

    博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 代理服务可简单的分为正向代理和反向代理: ...

  8. web 缓存服务器 HTTP2 性能测试: nuster vs nginx

    简单的用 h2load测试了nuster和nginx的http/2下的缓存性能,结果显示RPS(每秒请求数)nuster差不多是nginx的3倍 https://github.com/jiangwen ...

  9. Nginx做缓存服务器

    Nginx做缓存服务器 Nginx配置 1.主配置/etc/nginx/nginx.conf 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ...

最新文章

  1. Java操作json的通用类
  2. linux根目录挂载到2440开发板,飞凌2440开发板挂载NFS
  3. java面试题(转载其他人,方便日常看)
  4. S5PV210的内存映射
  5. 谷歌发布2012年搜索上升最快关键词 江南style上榜
  6. java 国际象棋 中文版_卡尔波夫国际象棋豪华版
  7. 电切镜行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  8. android开发歌词滑动效果_一些Flutter开发中的“坑”
  9. 陪集编码(Coset coding)
  10. 20个PCB快捷键操作,提升绘图效率
  11. VS2005编译Openssl-1.1.0f
  12. 如何编写旋转时钟(源代码)
  13. 【基于物理的渲染(PBR)白皮书】(三)迪士尼原则的BRDF与BSDF相关总结
  14. bluetoothctl 工具的使用
  15. iPhone 14分辨率,屏幕尺寸,PPI 详细数据对比 iPhone 14 Plus、iPhone 14 Pro、iPhone 14 Pro Max
  16. Python多继承mro
  17. Android蓝牙开发音频焦点
  18. PY_matplotlib
  19. dsniff 和 Ettercap 和 bettercap 详解
  20. Python3,os模块还可以这样玩,自动删除磁盘文件,非必要切勿操作。

热门文章

  1. CNN: TensorFlow 1.14.0 更新
  2. Qt5—嵌入停靠窗口QDockWidget
  3. 图像的全局特征--LBP特征
  4. 模式识别两种方法:知识和数据
  5. c语言for循环 wdtcn,MSP430F149的DS18B20C语言程序
  6. LVS负载均衡之NAT模式
  7. 【剑指offer】包含min函数的栈
  8. 1270: [BeijingWc2008]雷涛的小猫
  9. ios-UIButton-常用方法
  10. 复杂XML的解析及组装