aimeko 发表于 2013-2-20 10:25:45

[已解决] 如何让SSL支持IPV6访问?

使用了军哥的LNMP环境,成功配置了ipv6环境。
在 http 协议下,ipv4 和 ipv6 均能正常访问。
但是在ipv6环境下,发现只能走ipv4。

请问如何让 https 也能识别IPV6的SSL环境配置,感谢!!!!感谢!!!!


如果在Vhost虚拟主机conf中配置 监听ipv6如下:

            listen    443;
            listen :443;


如果监听 [::]:443; 启动nginx貌似会提示IP被占用。
nginx: bind() to :443 failed (98: Address already in use)
nginx: bind() to :443 failed (98: Address already in use)
nginx: bind() to :443 failed (98: Address already in use)
nginx: bind() to :443 failed (98: Address already in use)
nginx: bind() to :443 failed (98: Address already in use)
nginx: still could not bind()


下面是新手配置IPV6等系列的相关笔记,也许有人用的着,有需要的可以参考。
buyvm的 OpenVZ 256 VPS的lnmp安装环境nginx启用ipv6https://www.xiejiwu.org/article.asp?id=113
在BuyVM Debian系统中安装PPTP VPN (OpenVZ)https://www.xiejiwu.org/article.asp?id=114
让只有ipv4环境的windows2003支持ipv6并通过IPv6 Enabled认证https://www.xiejiwu.org/article.asp?id=115

++++++++++++++++++++++++++++++++


额 ,自己已解决。
需要在   /usr/local/nginx/conf/nginx.conf
更换如下:

server
      {
                listen       80;
                listen [::]:80 default ipv6only=on;
                listen [::]:443 default ipv6only=on;
       .................
         }


注意,这里不能添加   listen       443;
据测试, /usr/local/nginx/conf/nginx.conf 如果添加了listen       443; 在虚拟主机中,ipv4下SSL网站将无法访问。


然后再在 vhost 虚拟主机 监听每一个IPV6地址。
server
      {
            listen    443;
            listen :443;
       .................
         }


如果不加以上代码 则会提示报错。导致无法启动nginx。
OK 了 :)

[ 本帖最后由 aimeko 于 2013-2-20 15:25 编辑 ]
页: [1]
查看完整版本: [已解决] 如何让SSL支持IPV6访问?