如何为Nginx添加ipv6模块
发布网友
发布时间:2022-04-22 14:49
我来回答
共2个回答
热心网友
时间:2022-04-12 00:07
一:检查nginx是否已经包含ipv6模块
[root@iz2ze3oyrjbxg32wecre15z /]# /alidata/server/nginx/sbin/nginx -V
从结果看出,输出结果没有 ipv6支持
如果支持ipv6,则输出结果会包含 “--with-ipv6”。
如果各位同学的环境已经支持,则可以不用往下看啦,呵呵!
二:准备nginx源码
1、本文以1.4.4版本为例,其他版本没有测试,不过我想基本类似,具体请各位同学亲测。
2、如果本地没有源码,则需要到如下地址下载:http://nginx.org/download/nginx-1.4.4.tar.gz 其他版本,也可以在http://nginx.org 下载,上面会列出所有版本以供下载。
3、将下载的源码上传到linux
在root 根目录新建 tmp目录
[root@iz2ze3oyrjbxg32wecre15z /]# cd /root
[root@iz2ze3oyrjbxg32wecre15z /]# mkdir tmp
将安装包上传到该目录,上传工具推荐同学们使用Xftp
三:编译nginx源代码,加入ipv6支持
1、 跳转到tmp目录,执行命令解压安装文件
[root@iz2ze3oyrjbxg32wecre15z /]# cd tmp
[root@iz2ze3oyrjbxg32wecre15z /]# tar xvzf nginx-1.4.4.tar.gz
2、 跳转到解压过后的目录,执行命令配置新的参数,加入 ipv6模块。
注意:在配置参数时,一定要在原来的参数的基础上追加,否则有可能丢失原来的支持模块,切记!切记!切记!
[root@iz2ze3oyrjbxg32wecre15z /]# cd nginx-1.4.4
[root@iz2ze3oyrjbxg32wecre15z/]#./configure --user=www --group=www --prefix=/alidata/server/nginx --with-http_stub_status_mole --without-http-cache --with-http_ssl_mole --with-http_gzip_static_mole --with-ipv6
注意:‘--’符号之间有空格。
….中间省略若干输出
3、 配置完毕后,执行make 命令,重新编译
….中间省略若干输出
4、 编译完毕后,会在当前目录下创建objs目录,新的nginx执行文件将生成在该目录中
四:替换nginx执行文件
1、 同学们要养成好习惯,首先备份原来的nginx
[root@iz2ze3oyrjbxg32wecre15z /]#
cp /alidata/server/nginx/sbin/nginx /alidata/server/nginx/sbin/nginx.bak
2、 停止nginx
这里必须停止nginx,否则无法覆盖的哦!
[root@iz2ze3oyrjbxg32wecre15z /]# service nginx stop
3、 覆盖nginx执行文件
[root@iz2ze3oyrjbxg32wecre15z /]# cp nginx /alidata/server/nginx/sbin/nginx
3、测试新的nginx程序是否正确
[root@iz2ze3oyrjbxg32wecre15z /]# /alidata/server/nginx/sbin/nginx -t
4、 启动nginx
[root@iz2ze3oyrjbxg32wecre15z /]# service nginx start
五:再次检查nginx是否已经支持ipv6
[root@iz2ze3oyrjbxg32wecre15z /]# /alidata/server/nginx/sbin/nginx -V
至此,大功已经告成,感谢各位同学和我一起学习,如果有任何意见和建议欢迎批评指正。
配置完毕nginx ipv6模块后,还需要在nginx配置ipv6监听才能正确访问到我们的网站项目哦,请查看下一节“如何为Nginx配置IPv6地址端口监听”。
热心网友
时间:2022-04-12 01:25
IPV4日益稀缺,ipv6已经慢慢走上日程,待ipv6在国内普及,使用nginx配置ipv6那是肯定的,看看如何让nginx支持ipv6以及配置.
查看nginx是否支持ipv6
复制代码 代码如下:
# /usr/local/nginx-1.7.0/sbin/nginx -V
nginx version: nginx/1.7.0
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)
configure arguments: --prefix=/usr/local/nginx-1.7.0 --with-http_stub_status_mole
没有出现–with-ipv6,说明当前的nginx不支持ipv6,所以我们需要重新编译nginx,配置里面增加–with-ipv6,具体怎么安装,我不在啰嗦了。一般ynm安装的nginx默认已经开启了ipv6。
同时监听IPV4和IPV6
复制代码 代码如下:
server {
....
listen [::]:80;
...
}
只监听IPV6
复制代码 代码如下:
server {
....
listen [::]:80 default ipv6only=on;
...
}
监听指定IPV6地址
复制代码 代码如下:
server {
....
listen [3608:f0f0:3002:31::1]:80;
...
}
重启nginx
复制代码 代码如下:
/usr/local/nginx-1.7.0/sbin/nginx -s reload