nginxweb服务器提供了许多关于web服务的不同配置。有些配置经常使用。 server_name
是其中一个可能被忽略的解释。
null
单一域名
在过去,互联网是如此之少。网站和域名比今天少了。系统管理员更喜欢将一个域分配给一个web服务器,如Apache等。
多个域名
今天有很多网站和域名。在常规的IT基础设施中,我们通常需要在一个web服务器实例中提供多个域名。假设我们有这样的网站 site1.com
, site2.com
和 site3.com
. 我们应该为每一个启动单独的实例。但是对于端口80或433,我们将如何在一个端口中设置多个网站或域名。这是解决办法 server_name
服务器名称
我们将创建单独的服务器配置,如下所示。每个服务器配置专用于一个单独的域名。因此,单个nginx实例和端口将侦听并服务于多个域名。域名分离将由 nginx
根据我们的配置。
server { listen 80; server_name site1.com; ...}server { listen 80; server_name site2.com; ...}server { listen 80; server_name site3.com; ...}
使用通配符
服务器名称配置为我们提供了一些有用的特性。我们可以使用通配符来指定给定子域的任何字符和长度。在本例中,我们希望指定以结尾的子域 user
.
site_name "*user.site.com";
使用正则表达式
如果通配符不足以表示域或子域名,我们可以使用更复杂的结构,如正则表达式。在本例中,我们将接受以开头的子域 user
以最少1位最多2位的数字结尾。
server_name "userd{1,2}";
使用多个域名
我们可以为一个服务器配置指定多个域名。我们将只提供域名与空间划界。使用双引号也是一种很好的实践和错误预防技术。
server_name "site1.com" "mysite.com" "yoursite.com";
相关文章: 什么是网页?
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END