服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

IPv6上基于nginx名称的虚拟主机

我有一个nginx服务器,提供近六个不同的网站。 它运行在刚刚获得了IPv6本机支持(达拉斯数据中心)的Linode上,我正在尝试configuration大部分站点以实现双栈操作。 我得到了第一个使用仅IPv6的子域,如下所示: server { listen [::]:80 ipv6only=on; listen 80; server_name example.com ipv6.example.com; root /var/www/example.com/htdocs; #More stuff, including PHP, WordPress } 这很有用 – example.com仅用于IPv4(现在),ipv6.example.com仅用于IPv6(主要用于testing目的)。 我可以ping6 ipv6.example.com ,甚至wget ipv6.example.com没有打破汗水 – 这是wget ipv6.example.com愉快的痛苦(find了“窍门”之后,nginx绑定虚拟主机,需要ipv6only=on参数和双listen指令)。 不过,我现在试图扩展这个支持我的其他领域,从static.example.com开始; 当我采用与上面相同的方法时,虽然(双重listen指令,包括ipv6only=on参数),重新启动nginx时出现以下错误: * Starting Nginx Server… nginx: [emerg] a duplicate listen options for [::]:80 in /etc/nginx/sites-enabled/example.com.conf:3 似乎nginx的IPv6绑定方法不允许基于名称的虚拟主机? 我必须从我的主机获得额外的IPv6地址(没有问题),并使用IPv6上的基于IP的虚拟主机与基于命名的虚拟主机over IPv4? 还是我错过了一个解决scheme,将允许我的configuration在这两个堆栈上保持一致? 我希望我的网站能够在IPv6 世界大会上及时完成IPv6协议栈的工作,但是除非我能够快速清除这个问题,否则我可能还没准备好。 从实际的angular度来看,这并不是什么大不了的事 – […]