由于更新我的 nginx 服务器只能通过 IPv6 而不是 IPv4,而我的配置包含
listen [::]:80 default_server;
Run Code Online (Sandbox Code Playgroud)
现在我已将其更改为
listen [::]:80 default_server ipv6only=off;
Run Code Online (Sandbox Code Playgroud)
并且服务器再次通过 IPv4 可用。这接缝是由于nginx 1.3.4 中的更改(“nginx 1.3.4 的更改”部分)。
由于我在同一台机器上有多个服务器配置,我想ipv6only=off
全局设置是否有可能这样做?
Mic*_*ton 10
我刚刚从 1.0 升级到 1.4。
由于实际上只有一个侦听器绑定到任何给定端口,因此ipv6only=off
在您的任何一个listen
指令中指定就足够了。
所以,在我的默认server
块中,我有:
listen [::]:80 ipv6only=off default_server;
Run Code Online (Sandbox Code Playgroud)
和
listen [::]:443 ipv6only=off default_server;
Run Code Online (Sandbox Code Playgroud)
所有其他server
块仅指定原始listen
指令。它有效;任何虚拟主机都可以通过 IPv4 或 IPv6 访问。
您也可以将其添加到所有这些中,但这并不是真正必需的。将它添加到其中任何一个就足够了。
但是,由于该ipv6only=
标志仅适用于Linux,因此我不再使用此构造。我当前的指令明确指定了 IPv4 和 IPv6,例如:
listen [::]:80 default_server;
listen 80 default_server;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10262 次 |
最近记录: |