转载自 http://blog.51cto.com/1121914451/1795894
环境:centos6.7
因为需要https ,要用到http_ssl_module模块,但http_ssl_module并不属于nginx的基本模块所以自己重新编译添加
1.首先看下内核和系统的版本号。
1
2
3
4
5
6
|
[root@zabbix ~]
# uname -a
Linux zabbix.nnkj.com 2.6.32-573.el6.x86_64
#1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[root@zabbix ~]
# cat /etc/issue
CentOS release 6.7 (Final)
Kernel \r on an \m
|
2.看下编译安装nginx的时候,都编译安装的哪些模块。
1
2
3
4
5
6
|
[root@zabbix ~]
# /usr/local/nginx/sbin/nginx -V
nginx version: nginx
/1
.8.0
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=
/usr/local/nginx
|
3.进入之前下载并解压了的源码包目录;重新编译nginx
1
2
3
|
[root@zabbix nginx-1.8.0]
# cd /usr/local/src/nginx-1.8.0
[root@zabbix nginx-1.8.0]
# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
[root@zabbix nginx-1.8.0]
# make
|
▲这一步千万不能 make install ;不然会把之前已经安装的nginx 覆盖掉
4.需要替换nginx二进制文件,先停止掉nginx进程;备份一下原来的启动脚本。
1
2
3
4
5
6
|
[root@zabbix nginx-1.8.0]
# /etc/init.d/nginx stop
[root@zabbix nginx-1.8.0]
# cp /etc/init.d/nginx /etc/init.d/nginx.bak
[root@zabbix nginx-1.8.0]
# cp objs/nginx /usr/local/nginx/sbin/
cp
: overwrite `
/usr/local/nginx/sbin/nginx
'?
yes
|
5.查看nginx的模块,看下是否把需要的模块编译进去了
1
2
3
4
5
6
|
[root@zabbix ~]
# /usr/local/nginx/sbin/nginx -V
nginx version: nginx
/1
.8.0
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=
/usr/local/nginx
--with-http_stub_status_module --with-http_ssl_module
|
6.重新启动nginx;
1
2
3
4
|
[root@zabbix nginx-1.8.0]
# /etc/init.d/nginx start
Starting Nginx: [ OK ]
[root@zabbix nginx-1.8.0]
# netstat -lnp|grep nginx //查看是否正常监听80端口
|
添加第三方模块参考链接 http://taokey.blog.51cto.com/4633273/131871