DNS 域名转发

DNS 域名转发

如何设置域名以通过 DNS 或 apache 转发到另一个域名?

答案1

DNS 不知道什么是重定向,它只知道如何使用规范名称或 IP 将域分配给给定的 IP。

因此,第一步是在 DNS 中为您想要重定向到 Apache 服务器 IP 的域创建一个 A 名称:

假设您的 Apache 服务器 IP 是 10.0.0.1,那么在您想要重定向的域的 DNS 记录中,您需要有以下条目:

domain.com.    IN    A        10.0.0.1
www            IN    CNAME    domain.com.

重新启动/重新加载您的 DNS 服务器以使更改生效。


如果您要重定向的域名托管在同一台服务器上,那么在 apache 服务器上的事情就会变得简单很多,您需要做的就是在 ServerAlias 示例中添加域名:

<VirtualHost *:80>
    ServerName mymaindomain.com
    ServerAlias myredirecteddomain.com myotherredirecteddomain.com
    DocumentRoot /www/domain/public_html 
</virtualhost>

如果目标域不在同一台服务器上,那么您可以执行以下操作:

<VirtualHost *:80>
    ServerName myredirecteddomain.com
    ServerAlias www.myredirecteddomain.com myotherredirecteddomain.com www.myotherredirecteddomain.com
    Redirect permanent / http://www.redirecteverythinghere.com/
</virtualhost>

如果给定域已被重定向到您的主域,则另一个选择是使用 .htaccess:

RewriteEngine on
rewritecond %{http_host} ^long-name.com [nc]
rewriterule ^(.*)$ http://www.short-name.com/$1 [r=301,nc] 

答案2

如果该站点将为您想要转发的域名提供请求,只需从转发的域名到目标域名创建 DNS CNAME 记录。

如果站点是基于名称的虚拟主机,您可能还需要将转发的域名作为 ServerAlias 添加到 VirtualHost 部分。

答案3

如果您想要转发域名,请设置 DNS A 记录以转发到服务器。您应该为该域名设置一个 MX 记录。它应该指向将处理您的邮件的服务器,尤其是[电子邮件保护]

在 Apache 中按照选项大奖赛使用短域名进行重定向。以下重写规则集将转发来自短域名的请求到长域名。long-domain.com 不需要与短域名托管在同一台服务器上。使用适当的域。如果省略 RewriteCond 语句,则所有匹配的请求都将被重定向。

RewriteEngine 在 RewriteCond %{HTTP_HOST} short-domain.com$ [NC] RewriteRule ^(.*) http://long-domain.com1 美元 [左,右=301]

这些规则通常放在 VirtualHost 定义中。

相关内容