Cname-Record

CNAME 到萬用字元子域僅獲取預設伺服器頁面

  • June 20, 2012

我們的伺服器配置有問題,我希望我能得到一些幫助,因為它讓我們發瘋!

基本上,我們在 domain.com 上設置了一個應用程序,並在同一域上為使用者設置了萬用字元子域。我們希望以與 tumblr 相同的方式為使用者實現自定義域,例如,以便使用者為其子域創建一個 CNAME,例如:

userdomain.com  -> CNAME -> user.ourapp.com

但是,在為一個使用者設置了這個之後,他的域只是路由到我們端的伺服器預設頁面。在與 plesk 取得聯繫後,回復是這樣的:

根據內部 Web 伺服器邏輯,基於名稱的託管使用 HTTP 標頭中的主機名。在 DNS 中僅使用 CNAME 記錄將不起作用,因為 DNS 僅返回新伺服器 IP,瀏覽器將轉到該 IP,但舊伺服器名稱仍保留在 HTTP 標頭中。

並且網路伺服器在收到這樣的請求後會正常工作,它會嘗試找到 userdomain.com 並打開預設虛擬主機,在我們的例子中是 Media Temple Server 頁面。

嗯不錯。所以我們去稍微編輯我們的配置。我們正在執行 Plesk 10.4,在萬用字元子域下,我們有一個用於 vhost 的 httpd.include 文件。

在那裡我們有這個:

<VirtualHost 64.207.159.248:80>
   ServerName "_.ourapp.com:80"
   ServerAlias  "*.ourapp.com"
   UseCanonicalName Off

...

現在,我們嘗試刪除 ServerName 並只保留別名,並使用 /etc/init.d/httpd reload 重新載入配置,但我們仍然得到一個預設伺服器頁面。

我們很難過。

以前有沒有人遇到過這個問題,有解決辦法嗎?

在此先感謝,沃倫

瀏覽器仍會發送Host: userdomain.com標頭,CNAME 記錄不會導致重定向。因此,您將需要ServerAlias userdomain.com在您的配置中。在您的應用程序中,您需要將userdomain.com其與使用者相關聯。

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