正在生产线上跑着web前端是nginx+tomcat,现在有这样一个需求,需要对网站的单品页面和列表页设置缓存,不同的页面设置不同的缓存,但是由于开始没有安装ngx_cache_purge这个模块,现在没法直接往配置文件里边写,这时候,就需要在线安装ngx_cache_purge此模块,下边就说下怎么在线编译安装新模块。
安装步骤:
1.首先看下内核和系统的版本号。
[root@vmware1 ~]# uname -a 
Linux vmware1 2.6.18-308.el5 #1 SMP Tue Feb 21 20:06:06 EST 2012 x86_64 x86_64 x86_64 GNU/Linux 
[root@vmware1 ~]# lsb_release -a 
LSB Version:    :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch 
Distributor ID: CentOS 
Description:    CentOS release 5.8 (Final) 
Release:        5.8 
Codename:      Final

2.看下编译安装nginx的时候,都编译安装的哪些模块。
[root@vmware1 ~]# /usr/local/nginx/sbin/nginx -V 
nginx version: nginx/1.3.1 
built by gcc 4.1.2 20080704 (Red Hat 4.1.2-54) 
TLS SNI support disabled 
configure arguments: –user=nginx –group=nginx –prefix=/usr/local/nginx-1.3.1 –with-http_stub_status_module –with-http_ssl_module –with-pcre=/taokey/tools/pcre-8.33

3.下载proxy_cache所需的压缩包ngx_cache_purge-2.1.tar.gz。
[root@vmware1 tools]# wget http://labs.frickle.com/files/ngx_cache_purge-2.1.tar.gz 
–2013-09-29 11:02:19进到–  http://labs.frickle.com/files/ngx_cache_purge-2.1.tar.gz 
Resolving labs.frickle.com… 5.9.135.91 
Connecting to labs.frickle.com|5.9.135.91|:80… connected. 
HTTP request sent, awaiting response… 200 OK 
Length: 10535 (10K) [application/octet-stream] 
Saving to: `ngx_cache_purge-2.1.tar.gz’ 
100%[==========================================================================================>] 10,535      –.-K/s  in 0s      
2013-09-29 11:02:21 (64.8 MB/s) – `ngx_cache_purge-2.1.tar.gz’ saved [10535/10535]

4.解压下载好的ngx_cache_purge-2.1.tar.gz这个压缩包
[root@vmware1 tools]# tar -xf ngx_cache_purge-2.1.tar.gz

5.进到之前安装nginx这个软件包的目录
1 [root@vmware1 nginx-1.3.1]# cd /taokey/tools/nginx-1.3.1

6.重新./configure,make编译,不用make install。千万要注意:到这里就可以了,千万不要make install,不然文件就会被覆盖了。
[root@vmware1 nginx-1.3.1]# ./configure  –user=nginx  –group=nginx  –add-module=../ngx_cache_purge-2.1  –prefix=/usr/local/nginx-1.3.1  –with-http_stub_status_module  –with-http_ssl_module  –with-pcre=/taokey/tools/pcre-8.33 
[root@vmware1 nginx-1.3.1]# make

7.需要替换nginx二进制文件,先备份一下原来的启动脚本。
[root@vmware1 nginx-1.3.1]# cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

8.需要把nginx进程杀掉,不然复制会报错
[root@vmware1 nginx-1.3.1]# killall nginx 
[root@vmware1 nginx-1.3.1]# killall nginx 
nginx: no process killed 
[root@vmware1 nginx-1.3.1]# cp ./objs/nginx /usr/local/nginx/sbin/ 
cp: overwrite `/usr/local/nginx/sbin/nginx’? yes

9.此时,查看下nginx的所有的模块,是否把cache_purge这个模块成功编译进去。
[root@vmware1 nginx-1.3.1]# /usr/local/nginx/sbin/nginx -V 
nginx version: nginx/1.3.1 
built by gcc 4.1.2 20080704 (Red Hat 4.1.2-54) 
TLS SNI support disabled 
configure arguments: –user=nginx –group=nginx –add-module=../ngx_cache_purge-2.1 –prefix=/usr/local/nginx-1.3.1 –with-http_stub_status_module –with-http_ssl_module –with-pcre=/taokey/tools/pcre-8.33

10.开启nginx.
[root@vmware1 nginx-1.3.1]# /usr/local/nginx/sbin/nginx 
[root@vmware1 nginx-1.3.1]# netstat -anpt | grep nginx 
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                  LISTEN      6205/nginx

到此为止,实验结束。

生产线上的Nginx如何添加未编译安装模块的更多相关文章

  1. 新安装和已安装nginx如何添加未编译安装模块/补丁

    新安装和已安装nginx如何添加未编译安装模块/补丁 --http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=10485& ...

  2. 安装成功的nginx如何添加未编译安装模块

    原已经安装好的nginx,现在需要添加一个未被编译安装的模块举例说明:安装第三方的ngx_cache_purge模块(用于清除指定URL的缓存)nginx的模块是需要重新编译nginx,而不是像apa ...

  3. 转:安装成功的nginx如何添加未编译安装模块

    原已经安装好的nginx,现在需要添加一个未被编译安装的模块 举例说明:安装第三方的ngx_cache_purge模块(用于清除指定URL的缓存) nginx的模块是需要重新编译nginx,而不是像a ...

  4. 安装成功的nginx,如何添加未编译安装模块(非覆盖安装http_image_filter_module)

    背景:1.做了图片上传小项目.2.图片上传,需要多图管理.3.图片上传,需要存储到Fastdfs.4.Fastdfs上的图片,和Nginx结合.5.Nginx从Fastdfs获得的图片,需要使用缩略图 ...

  5. nginx添加未编译安装模块

    链接:http://taokey.blog.51cto.com/4633273/1318719

  6. 安装成功的nginx如何添加未编译模块?

    在重启nginx后发生了错误,错误如下: nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /u ...

  7. 23、nginx动态添加nginx_upstream_check_module健康检查模块

    nginx_upstream_check_module模块地址:https://github.com/yaoweibin/nginx_upstream_check_module 23.1.说明: 1. ...

  8. Nginx编译安装模块(非重装)

    假如原已经安装好的Nginx,现在需要添加一个未被编译安装的ssl模块,我们该怎么办呢?重装,还是有其他的办法?当然不需要重装的,下面我们看下如何实现的. 1.cd到Nginx解压过后的目录[root ...

  9. centos 7 下 nginx 1.10.3 编译安装的方法

    安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境. 一. gcc 安装安装 nginx 需要先 ...

随机推荐

  1. contents属性

    CALayer 有一个属性叫做contents,这个属性的类型被定义为id,意味着它可以是任何类型的对象.在这种情况下,你可以给contents属性赋任何值,你的app仍然能够编译通过.但是,在实践中 ...

  2. codeforces A. Kitahara Haruki's Gift 解题报告

    题目链接:http://codeforces.com/problemset/problem/433/A 题目意思:给定 n 个只由100和200组成的数,问能不能分成均等的两份. 题目其实不难,要考虑 ...

  3. Linux系统CentOS下mysql的安装日志

    今天自己捣鼓了一下,在linux系统CentOs6.5下使用源码方式安装和配置mysql,这里记录一下步骤. a) 下载mysql,source版本.Mysql-5.6.20.tar.gz b) 安装 ...

  4. Python之路,Day13 - 堡垒机

    项目实战:运维堡垒机开发 前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多人觉得,堡垒机就是跳板机,其实这个认识是不全面的,跳板功能只是堡垒 ...

  5. 插入符的创建(MFC)

    int CDrawRectangleDlg::OnCreate(LPCREATESTRUCT lpCreateStruct) { ) ; // TODO: 在此添加您专用的创建代码 CreateSol ...

  6. 使用AES128加密字符串

    import lombok.extern.slf4j.Slf4j; import org.apache.commons.codec.binary.Base64; import org.apache.c ...

  7. BZOJ3996 线性代数

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=3996 转化题目给的条件 $$D = \sum_{i=1}^n \sum_{j=1}^n{A(i ...

  8. 简单聊聊ES6-Promise和Async

    前言 本篇博文出至于我的github仓库:web-study,如果你觉得对你有帮助欢迎star,你们的点赞是我持续更新的动力,谢谢! 异步编程在前端开发中尤为常见,从最早的XHR,到后来的各种封装aj ...

  9. PAT团体程序设计天梯赛 - 模拟赛

    由于本人愚笨,最后一题实在无力AC,于是只有前14题的题解Orz 总的来说,这次模拟赛的题目不算难,前14题基本上一眼就有思路,但是某些题写起来确实不太容易,编码复杂度有点高~ L1-1 N个数求和 ...

  10. (构造)51NOD 1080 两个数的平方和

    给出一个整数N,将N表示为2个整数i与j的平方之和(i <= j),如果有多种表示,按照i的递增序输出. 例如:N = 130,130 = 3^2 + 11^2 = 7^2 + 9^2(注:3^ ...