将域指向特定的控制器/操作ASP.NET MVC

时间:2013-06-30 01:21:07

标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 cname domain-name

我正在编写一个ASP.Net MVC 4应用程序,它的一个功能是为我的客户提供他们自己的网站。可以访问网站的默认方式是http://www.abc.com/cb/acme

我想让他们能够将自己的域指向此位置,以便上面的内容变为http://www.acme.com

我可以让他们使用cname将acme.com指向http://www.abc.com/cb/acme吗?在您的观点和经验中,最好的方法是什么?

更新:如果可能的话,我还需要谷歌和bing履带式友好。

2 个答案:

答案 0 :(得分:0)

您可以为每个客户提供新的子域名。如果http://www.abc.com是您的主要网站域,那么您的客户acme可以将域名设为

http://acme.abc.com 

您不能直接向每个客户提供新域名,这就是它的出路。

答案 1 :(得分:0)

您可以在文件Global.asax中配置,例如:

routes.MapRoute(
            "CategoryDetails", // Route name
            "{cid}/{id}/{categoryName}/{articleName}.htm", // URL with parameters
            new { controller = "News", action = "Detail", categoryName = UrlParameter.Optional, articleName = UrlParameter.Optional, cid = UrlParameter.Optional, id = UrlParameter.Optional } // Parameter defaults
        );

视图中的代码,例如:

<a href="<%: Url.Action("Detail", "News", new { cid = Model.CategoryId, id = obj.ID , categoryName=Model.TitleContent, articleName = "1" })%>">