MVC4 网址重写/路由配置



我是MVC中整个路由的新手,所以我不确定如何为我的问题命名。 基本上,我们有谷歌分析,它根据当前网址绘制统计数据。 我们在路线中添加了引荐来源网址,以便我们可以提供指向合作伙伴网站的链接,例如:

http://www.mysite.co.za/PartnerSite/home/index

当用户直接访问我们的网站时,即:http://www.mysite.co.za,我希望网址显示"网站"作为引荐来源。

所以从本质上讲,

http://www.mysite.co.za

必须更改为

http://www.mysite.co.za/Website/Home/Index

我的路由当前配置为:

routes.MapRoute(
    name: "Search",
    url: "{referer}/{controller}/{action}",
    defaults: new { referer = "Website", controller = "Home", action = "Index" }
);

是否可以在路由中执行此操作,或者我应该让我的系统管理员更新 IIS 设置并重定向?

谢谢,因此,要关闭它,我需要发布一个解决方案。最重要的是,这是 IIS 的事情,使用路由似乎是不可能的。

好的,假设当用户点击 URL http://www.mysite.co.za 然后假设它访问主控制器的索引视图操作。因为/home/Index 是 MVC 中的第一个默认页面,所以它不是 URL 的一部分。所以对于你的案例,你应该这样写代码-

    routes.MapRoute(
          name: "Website",
          url: "/Website/Home/Index",
          defaults: new { controller = "Home", action = "Index" }
      );

请尝试一下,让我知道结果。

最新更新