7

关于 nginx 子域配置的 SO 上有几个问题,但没有找到与我的完全相同的问题。

假设我从我们组织some.example.com的更高级别的网络管理员那里得到了一个虚拟主机。example.com我想some.example.com用作我的主要站点并使用foo.some.example.combar.some.example.com辅助用途(代理等)。我尝试了这个简单的配置并将其放在下面sites-enabled但没有用:

server {
    listen 80; 
    server_name some.example.com;
    root /home/me/public_html/some;
    index index.html index.htm;
}

server {
    listen 80; 
    server_name foo.some.example.com;
    root /home/me/public_html/foo;
    index index.html index.htm;
}

server {
    listen 80; 
    server_name bar.some.example.com;
    root /home/me/public_html/bar;
    index index.html index.htm;
}

在此设置中some.example.com工作正常,但对于其他两个浏览器返回could not find foo.some.example.com. 我在 ubuntu 服务器上运行它。

这个配置有问题吗?还是我应该与更高级别的网络管理员(制作foo.some.example.combar.some.example.com注册)交谈?

4

2 回答 2

11

子域配置从父域的 DNS 服务器中的条目开始,查找将子域解析为 Web 服务器的 IP 地址。Web 服务器依次根据其对子域的配置委托请求。

如果您的子域中没有 DNS 设置,则 example.com 的管理员需要设置 CNAME 别名。别名将子域指向同一个 Web 服务器,该服务器托管父域的网站。为每个子域添加规范名称 (CNAMES)。一旦子域被解析为 Web 服务器的 IP 地址,Web 服务器就可以将请求路由到不同的网站。

于 2013-01-10T01:15:49.613 回答
0

CNAME 只是将网络流量获取到您的 IP 地址的一种方式。该请求仍将在 Host: 标头中包含原始名称。

于 2015-08-21T10:46:49.517 回答