ASP.NET MVC 3重定向/路由URL返回子域

时间:2012-12-11 17:34:41

标签: asp.net-mvc-3 iis-7 asp.net-mvc-routing url-routing

我在子域(www.website.com/foobar)上有一个站点,它提取默认页面视图。由于MVC应用程序的性质,也可以通过默认内容的“控制器/操作”URL(www.website.com/foobar/{controller})和(www.website.com/foobar)访问此默认页面视图。 / {控制器} / {动作})。

为了分析和跟踪,除了原始的短片(www.website.com/foobar)之外,我希望这些其他任何网址都可以重定向回这个较短的网址。

所以... www.website.com/foobar/{controller},当输入或点击书签链接时,应重定向到www.website.com/foobar

我尝试过使用路由,但实际上无法更改URL本身。我不确定是否可以通过映射进行更改。

编辑:有没有人在IIS7中使用过HTTP重定向?我可以从顶层重定向,但似乎无法让重定向在任何视图上工作。

2 个答案:

答案 0 :(得分:1)

我认为您不能单独使用路由来重定向域。我遇到了类似的问题,经过几天的搜索和询问,我最终使用Redirect来解决问题。希望这会有所帮助。

答案 1 :(得分:1)

我能够通过使用HTTP Redirect模块解决IIS 7中的问题。因为它是一个MVC应用程序,在视图上设置重定向有点棘手,但它是可能的。我使用了本教程:Creating a redirect in IIS7

编辑:虽然上述解决方案有效,但往往无法预测。我最后通过读取用户在Quote控制器的Index操作中输入的URL来解决它,然后重定向我正在查找的关键字是否在URL中。只是索引操作开头的简单if语句。