Domain-Name-System

有沒有更好的方法來重定向我客戶的域?

  • April 7, 2018

我在一台伺服器上為我的客戶提供多個網站。在開發過程中,我只是在自己的域上創建一個子域。例子client.mydomain.example。通常,我的客戶已經擁有另一個提供商的域和電子郵件。我不想為我的客戶託管電子郵件。

我嘗試了三種不同的方式來設置 DNS:

  1. 使 HTTP 重定向 from clientdomain.exampletowww.clientdomain.example和 CNAME 記錄www.clientdomain.exmple指向我的伺服器上的臨時子域client.mydomain.example
  2. 有一條來自(*.)clientdomain.tld我的伺服器 IP 的 A 記錄,但讓 MX 等指向他們目前的電子郵件主機。
  3. 設置我自己的名稱伺服器並將其用於我客戶的域。然後按照與2相同的方式設置。

據我所知,這三個都有優點和缺點:

  1. **優點:**方便。我可以更改我伺服器上的 IP 地址、移動到另一個 serverpark、設置故障保護、負載平衡等等。

**缺點:**我強迫我的客戶使用www,如果他們已經有一個網站,non-www他們可能會遭受 SEO-vise(?)。此外,額外的 CNAME 記錄不利於頁面速度。 2. **優點:**沒有 SEO 或頁面速度問題。易於設置。

**缺點:**如果我需要更改 IP,我需要為我的所有客戶端站點進行 DNS 更改。 3. **優點:**沒有 SEO 或頁面速度問題。如果我需要更改伺服器,我可以一次為我的所有客戶端站點執行此操作,因為 DNS 設置可以方便地在我自己的名稱伺服器上設置。

**缺點:**我需要執行自己的名稱伺服器。我還必須為我的客戶設置 MX 記錄和可能的其他 DNS 記錄。

我現在首選的方法是 1. 因為我認為在我的大多數情況下利大於弊。

有沒有其他方法可以在不指定 IP 地址的情況下從域重定向到伺服器?

澄清:解決方案 1 對我有用,但由於在進入最終 A 記錄之前有兩個步驟,所以它比較慢。理想情況下,我想同時指向non-wwwwww指向我的伺服器域,但據我所知,這對於 CNAME 記錄是不可能的,對吧?

請注意, aCNAME根本不是 HTTP 重定向。

  • 這裡只有重定向是從example.comwww.example.com,它可以永久化。額外CNAME的在 DNS 級別,將被記憶體,因此它不會真正影響站點性能或速度。
  • 無論誰託管 DNS,您的 Web 伺服器都需要了解客戶端域。

這就是為什麼我更喜歡你的案例#1,更好地理解:

  1. 如有必要,指導您的客戶添加www.example.com. CNAME client.example.net.以能夠自行更改 IP 地址。
  2. 建議如何在他們目前的 Web 伺服器上進行從非 www 到 www 的重定向。
  3. 將實際域名綁定到您client.example.net的網路伺服器配置中。

對於案例#3,您不僅最終會在技術上託管 DNS 伺服器,而且還負責在客戶端需要新的第三方記錄時進行更新。

引用自:https://serverfault.com/questions/899816