【发布时间】:2012-01-03 17:38:20
【问题描述】:
我在域路由上关注了Maarten Balliauw's post。我已经能够路由到不同子域的控制器。但我不知道如何路由到虚拟目录。如您所见,这是一个路由到常用 mvc 控制器的示例,
routes.Add("DomainRoute", new DomainRoute(
"home.example.com", // Domain with parameters
"{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
));
由于我的博客位于虚拟目录中,我需要将路由添加到名为“~/blog”的虚拟目录 我试过这样的代码,结果不好,
routes.Add("DomainRoute", new DomainRoute(
"blog.domain.com", // Domain with parameters
"blog", // URL with parameters
new { controller = "blog" } // Parameter defaults
));
如果有人能对此有所启发,那就太棒了。
【问题讨论】:
-
虚拟目录总是博客吗?虚拟目录是 URL 的一部分,因此可能是 blog/{action}/{id}
-
没有成功。让我澄清一下。它是共享 Windows 主机上的虚拟目录。它不是托管在域根目录上的主站点的一部分。
-
如果不指定域会怎样? IIS 会将请求留在您的 mvc 应用程序中,您可以从那里开始。我认为可能还有其他一些问题使其无法正常工作,但它似乎不需要域路由。
-
哦,我明白了这个问题。现在我明白了更多:)。那么,博客与主目录位于不同的虚拟目录中吗?
-
对不起,伙计。我很抱歉。现在,我已经能够在托管服务提供商的帮助下创建指向站点的子域。在这种情况下,无需进行域路由。无论如何谢谢。 :)
标签: asp.net asp.net-mvc-3 url-routing iis-7.5 windows-server-2008-r2