生产线上的Nginx如何添加未编译安装模块
正在生产线上跑着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如何添加未编译安装模块的更多相关文章
- 新安装和已安装nginx如何添加未编译安装模块/补丁
新安装和已安装nginx如何添加未编译安装模块/补丁 --http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=10485& ...
- 安装成功的nginx如何添加未编译安装模块
原已经安装好的nginx,现在需要添加一个未被编译安装的模块举例说明:安装第三方的ngx_cache_purge模块(用于清除指定URL的缓存)nginx的模块是需要重新编译nginx,而不是像apa ...
- 转:安装成功的nginx如何添加未编译安装模块
原已经安装好的nginx,现在需要添加一个未被编译安装的模块 举例说明:安装第三方的ngx_cache_purge模块(用于清除指定URL的缓存) nginx的模块是需要重新编译nginx,而不是像a ...
- 安装成功的nginx,如何添加未编译安装模块(非覆盖安装http_image_filter_module)
背景:1.做了图片上传小项目.2.图片上传,需要多图管理.3.图片上传,需要存储到Fastdfs.4.Fastdfs上的图片,和Nginx结合.5.Nginx从Fastdfs获得的图片,需要使用缩略图 ...
- nginx添加未编译安装模块
链接:http://taokey.blog.51cto.com/4633273/1318719
- 安装成功的nginx如何添加未编译模块?
在重启nginx后发生了错误,错误如下: nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /u ...
- 23、nginx动态添加nginx_upstream_check_module健康检查模块
nginx_upstream_check_module模块地址:https://github.com/yaoweibin/nginx_upstream_check_module 23.1.说明: 1. ...
- Nginx编译安装模块(非重装)
假如原已经安装好的Nginx,现在需要添加一个未被编译安装的ssl模块,我们该怎么办呢?重装,还是有其他的办法?当然不需要重装的,下面我们看下如何实现的. 1.cd到Nginx解压过后的目录[root ...
- centos 7 下 nginx 1.10.3 编译安装的方法
安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境. 一. gcc 安装安装 nginx 需要先 ...
随机推荐
- java停止线程
本文将介绍jdk提供的api中停止线程的用法. 停止一个线程意味着在一个线程执行完任务之前放弃当前的操作,停止一个线程可以使用Thread.stop()方法,但是做好不要使用它,它是后继jdk版本中废 ...
- 让th里面的东西自动换行
让th里面的东西自动换行 html中的TH里面的文字不管多长,始终是一行,很烦 <th style="word-wrap:break-word;">aaaaaaaaaa ...
- AFNetworking 2.0教程
在iOS 7中,Apple更新了iOS中的网络基础架构,新推出的网络基础架构是NSURLSession(原来的网络基础架构NSURLConnection). iOS开发中往往会涉及网络数据处理,像其他 ...
- BZOJ_2726_[SDOI2012]任务安排_斜率优化+二分
BZOJ_2726_[SDOI2012]任务安排_斜率优化+二分 Description 机器上有N个需要处理的任务,它们构成了一个序列.这些任务被标号为1到N,因此序列的排列为1,2,3...N.这 ...
- macbook pro 配置jdk,maven环境变量
https://blog.csdn.net/vvv_110/article/details/72897142(1)下载jdk安装包,进行安装,maven安装包,进行解压 (2)改写环境变量的配置文件/ ...
- Intelidea右键新建选项没有Java class选项
Intelidea创建好项目之后,右键新建Java class的时候发现没有改选项,只有以下几个选项 把sec目录设为源码目录,首先打开Project Structure
- relative和absolute
relative 相对定位 1. 幻影瞬移 absolute属性也有瞬移技能,不同之处在于:absolute属性以天空或其他外界限制计算瞬移位置:而relative属性由于是凡人肉体,偏移能力有限,只 ...
- Sublime Text 常用的16 个 Sublime Text 快捷键
在我做了一次包含一些现场编码的演示后,一些观众问我是如何操作这么快.当然这里没有唯一的答案,答案是一堆简单的快捷键和大量的实践的组合.为了回应那些询问,我觉得有必要看看我每天想都不用想且使用的快捷键. ...
- Swift3.0 控制流
常用的一些判断方式 //for in let numberList = [, , , , ] //获取第一个元素 !拆包 print(numberList.first!)//1 //获取最后一个元素 ...
- bzoj 1023: [SHOI2008]cactus仙人掌图【tarjan+dp+单调队列】
本来想先求出点双再一个一个处理结果写了很长发现太麻烦 设f[u]为u点向下的最长链 就是再tarjan的过程中,先照常处理,用最长儿子链和次长儿子链更新按ans,然后处理以这个点为根的环,也就是这个点 ...