在nginx配置中设置了哪些服务器名称可用?

时间:2016-01-07 20:57:32

标签: nginx

server_name  src.wordpress-develop.dev *.src.wordpress-develop.dev ~^src\.wordpress-develop\.\d+\.\d+\.\d+\.\d+\.xip\.io$;

此行取自VVV - https://github.com/Varying-Vagrant-Vagrants/VVV

我只是想了解为什么应用这样的server_name以及在这种情况下可用的服务器名称。

1 个答案:

答案 0 :(得分:0)

首先,服务器名称的值是以空格分隔的表达式列表。让我们一个一个地看一下表达式。

src.wordpress-develop.dev

这会为该文字域名设置服务。所以" http://src.wordpress-develop.dev"在浏览器中

*.src.wordpress-develop.dev

这个设置所指示域的任何通配符子域。所以匹配的内容是foo.src.wordpress-develop.devfoobar1234-5678.somethingelse.src.wordpress-develop.dev

最后一个正则表达式:

~^src\.wordpress-develop\.\d+\.\d+\.\d+\.\d+\.xip\.io$;

前面的波浪号(~)表示后面的内容是正则表达式。在这种情况下,正则表达式匹配以src.wordpress-develop.开头的域名(请注意.被转义为\.,以便不调用正则表达式通配符{{ 1}})。

这些域必须有4组任意数量的数字,后面各有一个点。这看起来很像IPv4地址所以:.

最后,正则表达式表明域名应以src.wordpress-develop.205.15.198.6.结尾,因此符合此规则的完整域名为:xip.io。此规则末尾的分号只会终止整个src.wordpress-develop.205.15.198.6.xip.io表达式。

See the docs here

至于为什么该软件的作者选择了这些,我无法告诉你。通常,server_name指令用于Virtual Hosting