nginx缓存服务器
参考: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缓存服务器相关推荐
- 使用nginx缓存服务器上的静态文件
一.nginx缓存的优点 如图所示,nginx缓存,可以在一定程度上,减少源服务器的处理请求压力. 因为静态文件(比如css,js, 图片)中,很多都是不经常更新的.nginx使用proxy_cach ...
- linux nginx 缓存服务器,如何开启Nginx缓存
众所周知,Nginx是一个高性能的web服务器,尤其在高并发和处理静态页面的时候有先天的优势:很大一部分得益于缓存的开启,那么如何开启nginx的缓存呢. 简单来说可以分两步: 1.定义缓存存储目录并 ...
- nginx服务器默认的缓存文件,配置Nginx 缓存服务器
@import url(http://www.blogjava.net/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxH ...
- Nginx 缓存服务器
proxy_cache_key过滤请求参数 为一个响应较慢的服务设置缓存,但是应用请求统一规范要求以timestamp作为参数.因为缓存以请求路径加参数/api/path?param=value&am ...
- linux nginx 缓存服务器,linux nginx 图片缓存服务器
弹性云服务器 ECS 弹性云服务器(Elastic Cloud Server)是一种可随时自助获取.可弹性伸缩的云服务器,帮助用户打造可靠.安全.灵活.高效的应用环境,确保服务持久稳定运行,提升运维效 ...
- memcache缓存服务器(nginx php memcache mysql)
memcache缓存服务器(nginx php memcache mysql) 环境: 192.168.1.23 nginx+php 192.168.1.28 memcache 192.168.1 ...
- nginx反向代理缓存服务器构建
博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 代理服务可简单的分为正向代理和反向代理: ...
- web 缓存服务器 HTTP2 性能测试: nuster vs nginx
简单的用 h2load测试了nuster和nginx的http/2下的缓存性能,结果显示RPS(每秒请求数)nuster差不多是nginx的3倍 https://github.com/jiangwen ...
- 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 ...
最新文章
- Java操作json的通用类
- linux根目录挂载到2440开发板,飞凌2440开发板挂载NFS
- java面试题(转载其他人,方便日常看)
- S5PV210的内存映射
- 谷歌发布2012年搜索上升最快关键词 江南style上榜
- java 国际象棋 中文版_卡尔波夫国际象棋豪华版
- 电切镜行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- android开发歌词滑动效果_一些Flutter开发中的“坑”
- 陪集编码(Coset coding)
- 20个PCB快捷键操作,提升绘图效率
- VS2005编译Openssl-1.1.0f
- 如何编写旋转时钟(源代码)
- 【基于物理的渲染(PBR)白皮书】(三)迪士尼原则的BRDF与BSDF相关总结
- bluetoothctl 工具的使用
- iPhone 14分辨率,屏幕尺寸,PPI 详细数据对比 iPhone 14 Plus、iPhone 14 Pro、iPhone 14 Pro Max
- Python多继承mro
- Android蓝牙开发音频焦点
- PY_matplotlib
- dsniff 和 Ettercap 和 bettercap 详解
- Python3,os模块还可以这样玩,自动删除磁盘文件,非必要切勿操作。