有时候,你会遇到这样的问题:
1. 我的服务器拥有IPV6但是无法通过IPV6访问(只能通过IPV4访问)。
2. Nginx没有监听IPV6,因此使用IPV6的用户无法访问我的网站。作为开发者我想要使IPV6可用,我需要它。(App Store要求应用程序必须支持IPV6)。
3. 有些主机商推出了纯IPv6环境的主机,需要基于ipv6情况下的网络访问。
1. 我想为Nginx启用IPV6监听
①. 首先你需要为你的服务器配置IPV6,只有拥有IPV6地址,你才可以使用。
可以终端输入命令 ifconfig 查询有无IPV6地址。
②. 检查Nginx是否安装IPV6支持。【宝塔默认已开启–with-ipv6支持,此处可掠过】
SSH终端输入:[nginx -V],检查是否具有[–with-ipv6]输出,代表已经安装IPV6模块。
③. 编辑网站配置文件。
查找
listen 80;替换为
listen 443 ssl http2;
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
按照图片这样配置
返回宝塔页面,找到Nginx配置设置,载入配置后重启Nginx。
有时候重启会提示出错,原因是Openresty等不太适配HTTP2, 把配置文件里面的http2删除保存就可以了。
④. 现在你就可以通过IPV6访问你的网站了。
如果设置完无法访问,考虑是不是ipv6防火墙阻止了。
关闭防火墙并清除放行ipv6访问。
ip6tables -F
ip6tables -X
ip6tables -P INPUT ACCEPT
ip6tables -P OUTPUT ACCEPT
ip6tables -P FORWARD ACCEPT
依次输入,每输入一行enter执行一次。
发表评论