【问题标题】:Configure real domain to suddomain (wildcard subdomain)?将真实域配置为 suddomain(通配符子域)?
【发布时间】:2012-08-21 14:27:02
【问题描述】:

我们提供博客平台,并使用通配符子域 (aaa.testweb.com) 分隔每个用户。如果他愿意,我们希望我们的用户能够切换到他的域 (www.aaa.com)。如何配置 Apache 服务器以支持以下场景?

除了httpd.conf还有什么需要配置的,请告知。

前:
1. 前往www.aaa.com并显示aaa.testweb.com的内容
(地址栏中的 URL 是 www.aaa.com
2. 前往www.aaa.com/content并显示aaa.testweb.com/content的内容
(地址栏中的 URL 是 www.aaa.com/content

【问题讨论】:

  • 对于每个用户,aaa,bbb,ccc等,你要为他们注册一个域?

标签: apache dns subdomain wildcard


【解决方案1】:

StackOverflow 上已经有很多关于这个主题的问题,但我还是会插话并加上我的两美分。 :) 根据我的经验,这应该可以解决问题...

在我详细介绍之前:简而言之,您需要做的是设置 Apache 在收到请求时提供哪些信息。我在这里假设无论您的客户使用您的子域之一还是他们自己的域,您的服务器仍将托管博客?在这种情况下,重要的部分是您客户的 VirtualHost 指令中的 ServerName。

以下是使用示例 URI 的这两种情况的示例,首先使用子域:

<VirtualHost *:80>
ServerName aaa.testweb.com
DocumentRoot /public_html/customers/aaa_html
# Other directives here
</VirtualHost>

第二个使用专用域名:

<VirtualHost *:80>
ServerName www.aaa.com
DocumentRoot /public_html/customers/aaa_html
# Other directives here
</VirtualHost>

在 DNS 方面,每个指向您的网络主机的相关子域都应该有一个 A 记录,以便“aaa.testweb.com”的请求能够访问您的服务器。您可以通过将 *.testweb.com 指向您的服务器来轻松完成此操作,但是这会将该域上的所有子域请求路由到您的服务器;如果请求的子域不存在,则将提供默认域站点。

我在这里可能弄错了,但我认为根据需要为每个新子域设置自定义 A 记录从长远来看有助于更好地控制情况。

如果客户想要从一个选项切换到另一个选项,您的 Apache 服务器上唯一需要的更新就是他们的 VirtualHost 的 ServerName 规则。 DNS 记录将通过相关的域名注册商进行配置。

【讨论】:

    猜你喜欢
    • 2016-04-25
    • 2020-08-23
    • 2010-09-09
    • 1970-01-01
    • 1970-01-01
    • 2015-11-23
    • 2011-07-28
    • 2011-08-16
    • 1970-01-01
    相关资源
    最近更新 更多