几日前在买了个buyvm在美国拉斯维加斯的256 VPS,配置了lnmp最新的0.9一键安装包,配置了pptp VPN,感觉不错。
发现给了16个ipv6地址,准备用上,以下是配置笔记,整合网上教程资源亲测。
查看nginx是否启用ipv6
安装了lnmp0.9安装包,所以应该默认支持IPV6。
如果有怀疑,可以测试下。
查看nginx是否启用ipv6,SHH登陆后,输入命令
/usr/local/nginx/sbin/nginx -V
结果显示
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6
而 --with-ipv6 则就是环境已经支持了IPV6
修改nginx服务器配置文件
这里要修改的文件是 /usr/local/nginx/conf/nginx.conf
通过vi命令打开 /usr/local/nginx/conf/nginx.conf
找到 listen 80; 处,下面添加 listen [::]:80 default ipv6only=on;
server{
listen 80; #此处监听所有ipv4地址
listen [::]:80 default ipv6only=on; #此处监听所有ipv6地址
}
这里要注意的是,一定要添加 default ipv6only=on 很多网上教程都没有这个提示,导致虽然测试配置文件没问题,却无法打开网站。
执行以下命令,查看Nginx配置是否正确
/usr/local/nginx/sbin/nginx -t
若返回以下结果则正确
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
因为VPS上不止一个网站,所以这样开启的话,如果域名解析了ipv6只能显示到默认网站上,所以我们还需要更改虚拟主机的文件。
注意事项:修改conf配置文件是指修改所有网站的conf文件,包括
/usr/local/nginx/conf/nginx.conf
/usr/local/nginx/conf/vhost/域名1.conf
/usr/local/nginx/conf/vhost/域名2.conf
这里,每个开启IPV6的虚拟主机的配置文件都要加上监听ipv6信息,
如vi命令打开 /usr/local/nginx/conf/vhost/ipv6.ac.conf
找到监听80端口那段,加上监听ipv6
listen 80;
listen [2605:6400:2:fed5:22:2ca3:a515:5a2]:80;
至于不开启ipv6的,则可以不配置监听ipv6信息。
重启Nginx生效;
killall nginx
/usr/local/nginx/sbin/nginx
netstat -apn 命令 查看端口监听
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1881/nginx
tcp6 0 0 :::80 :::* LISTEN 1881/nginx
0.0.0.0:80说明ipv4的80端口都在监控中。而:::80说明ipv6的80端口都在监控中。
现在就可以使用ipv6访问网站了。
(责任编辑:IT) |