设置具有多个服务器的域

设置具有多个服务器的域

我正在为我的客户建立一个小型网络托管服务。我有我的专用服务器,它将成为使用 WHM/cPanel 托管客户网站的共享服务器。

我有一个单独的 VPS 服务器,我想用它来托管我自己的网站,这样,如果共享服务器出现故障,我的客户仍然可以联系我开票等。

我已经在我的共享服务器上设置了我的企业域名。我在其中创建了粘合记录名称廉价设置 ns1/ns2,以便可以使用 mydomain.com 访问我的共享服务器,并可以使用 ns1.mydomain.com 和 ns2.mydomain.com 转发域。

我现在想做的就是向前www.mydomain.com和 mydomain.com 到我的 VPS,以便我可以用它来托管我的主网站。

我已经编辑了 WHM/cPanel 中的 DNS 区域,以将 @ 和 www“A 记录”指向我的 VPS IP 地址。

现在,当我尝试访问 www./mydomain.com 时,它会显示 Apache 2 测试页面,就好像虚拟主机不起作用一样。我之前设置过 VPS,但从未遇到过此问题,因此我认为要么是 DNS A/www 记录有问题,要么是我在配置 VPS 时遗漏了某些内容。

这是我的虚拟主机httpd.conf:(CentOS 6.5)

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
...
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /var/www/html
    ServerName vps.mydomain.com
    ServerAlias 91.227.220.159
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot /var/www/username/public_html
    ServerName www.mydomain.com
    ServerAlias mydomain.com
</VirtualHost>

如果这有效,那么 vps.mydomain.com 和服务器 IP 应显示默认的 apache 页面,而 mydomain.com 应显示位于 的站点/var/www/username/public_html

我知道这可能是一个很难回答的问题,但我正在抓狂。有什么明显的事情我可能会错过吗?

我设置域的方式是最佳途径吗?这个想法是,如果我的客户通过 mydomain.com 访问我,他们将被带到我在 VPA 上的网站,但他们也可以使用 ns1.mydomain.com 和 ns2.mydomain.com 将域指向共享服务器和主机名.mydomain.com 对于使用 IMAP 时的 SSL 等内容,是否有更好的方法来实现此目的?也许将域名推回 Namecheap 并从那里管理 DNS?

答案1

如果这有效,那么 vps.mydomain.com 和服务器 IP 应显示默认的 apache 页面,而 mydomain.com 应显示位于 /var/www/username/public_html 的站点。

只要重新加载 Apache 并重新读取其配置文件即可正确。

对我来说,这听起来像是 DNS 传播问题。从本地计算机和远程计算机检查 mydomain.com 和 www.mydomain.com 的 DNS 记录,看看是否获得相同的结果。然后再次检查,因为如果您的注册商委托给多个 NS,则连续检查几次可能会返回不同的结果。
也可以看看Whatsmydns.net检查来自全球各个 NS 的 DNS 记录。

如果您能够排除 DNS,请确保 Apache 使用以下命令读取您的 VirtualHost 块:

httpd -S

或者

apache2ctl -S

您应该会看到列出的每个值,默认虚拟主机位于顶部:

*:80                   is a NameVirtualHost
     default server vps.mydomain.com (/etc/httpd/conf/httpd.conf:10)
     port 80 namevhost vps.mydomain.com (/etc/httpd/conf/httpd.conf:10)
     port 80 namevhost www.mydomain.com (/etc/httpd/conf/httpd.conf:20)
             alias mydomain.com

我设置域的方式是最佳途径吗?

我认为将您的客户网站与您的支持/公司分开托管是个好主意。只需确保您的支持站点“不会”宕机(例如地理冗余或提供商冗余环境)。

我也会避免托管您自己的 DNS。保持 DNS 正常运行并保持高可用性通常比其价值更麻烦,特别是如果您考虑到它崩溃的后果。

相关内容