
答案1
在 example.org 的 DNS 中,您將看到以下內容:
example.org. 86400 IN A 127.0.0.1
*.example.org. 86400 IN A 127.0.0.1
example.org. 86400 IN MX mail.example.org
在 example.us 的 DNS 中,您可以鏡像上述內容或使用以下 CNAME:
example.us. 86400 IN a 127.0.0.1 ;; shoudln't use CNAME here
*.example.us. 86400 IN CNAME example.org
example.us. 86400 IN MX mail.example.org
然後,您必須告訴您的網路和郵件伺服器處理第二個網域。
在 Apache 中我會做這樣的事情:
#force url's to cannoical Domain name (ie. Remove wwww)
RewriteCond %{HTTP_HOST} !^example\.org$ [NC]
RewriteRule ^/(.*)$ http://example.org/$1 [R=301,L]
對於您的電子郵件伺服器,您可以設定一個別名,或根據您使用的郵件伺服器,可能有一個設定指令讓它自動為多個網域執行別名。
澄清一下,僅使用 DNS 並不能真正「重定向」。 DNS 僅在網域名稱 (example.org) 和 IP 位址 (127.0.0.1) 之間進行轉換。您可以使用 DNS 告訴用戶端查看另一個網域以最終解析 IP 位址(即使用 CNAME),但在該伺服器上執行的服務需要知道如何處理多個網域。也就是說,許多服務只關心 IP 位址,因此無需任何額外配置即可處理額外的網域,但通常對於 http 和電子郵件,您需要調整每個網域的處理方式。
答案2
如果您同時擁有 example.us 和 example.org,只需將兩個網域上的 DNS 記錄設定為指向相同的伺服器即可。在 Web 伺服器上,新增虛擬主機或重寫規則以擷取 .us 請求,並將 301 重新導向至 .org 名稱。在郵件伺服器上,新增 .us 網域作為 .org 網域的別名,人們將能夠使用其中任一網域將郵件傳送到您的郵件信箱。
答案3
目前尚不清楚您為什麼要這樣做,但您可能在錯誤的層面上處理問題。
答案4
沒有「快樂」的 DNS 記錄來轉送所有子網域。您應該更改每筆example.us
記錄以指向 上的相對 CNAME example.org
。
MX 10 example.us CNAME mail.example.org.
www.example.us CNAME www.example.org.
不要忘記最後一個點!