2012-04-06 33 views
0

我在http:// [some GUID] .cloudapp.net上有一個Windows Azure應用程序。MVC3 Url.Abs在Azure返回域名,而不是域名註冊商處的CNAME記錄

我在GoDaddy上使用了CNAME記錄來將mydomain.com指向此應用程序。一切正常,但一件事。 // [GUID有些] .cloudapp.net域,而不是mydomain.com:我使用

@Url.Abs(Url.Action("Action", "Controller")) 

Url.Abs總是預先將HTTP發送從該應用程序的電子郵件和嵌入鏈接到該網站。我沒有發現這個助手的重載,讓我把我的域名從web.config或類似的東西。我如何告訴MVC3使用mydomain.com?

回答

0

我很困惑,因爲我沒有看到應用程序可能知道.cloudapp.net域名。 CNAME不會以這種方式工作......該應用只會看到「mydomain.com」。

你確定你的CNAME設置正確嗎?它不只是轉發或「掩蓋」什麼?

+0

不,這些是在服務器上生成的傳出網址。服務器認爲它是guid.cloudapp.net,所以它使用該名稱。當然,世界其他地區可以看到mydomain.com,但Azure沒有CNAME記錄,GoDaddy的確如此。我正在尋找Azure中的一些設置,或者甚至是一個不同的調用,這將允許我注入一個不同的域名。 – AldenG 2012-04-06 20:52:57

+0

我告訴你的是,你的網絡應用程序不知道 .cloudapp.net。你可以調用的唯一API就是服務管理API,如果你沒有給它一個API證書等,你的Web應用程序就不能調用它。所以我說的是,字符串「」。 cloudapp.net「必須來自您的應用以外。通常,它會作爲Web請求上的HOST標頭進入,但如果您使用的是CNAME,則HOST標頭的值將始終是您瀏覽的域(而不是CNAME的內容)。 – smarx 2012-04-07 01:19:44