【问题标题】:MVC4 URL Rewriting / Route ConfigMVC4 URL 重写/路由配置
【发布时间】:2014-03-18 02:01:38
【问题描述】:

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

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

当用户直接访问我们的网站时,即:http://www.mysite.co.za,我希望 url 显示“网站”作为推荐人。

所以本质上,

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 设置并重定向?

【问题讨论】:

    标签: asp.net-mvc-4 url-rewriting url-routing


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      好的,假设当用户点击 url http://www.mysite.co.za 然后假设它访问 Home Controller 的 Index View Action。因为 /Home/Index 是 MVC 中的第一个默认页面,因此它不是 URL 的一部分。 因此,对于您的情况,您应该像这样编写代码-

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

      请试一试,然后告诉我结果。

      【讨论】:

      • 感谢您的回复,在修复了 url 没有根据需要更改后,Url 不能以'/'开头。它停留在 www.mysite.co.za/ 上并引发目录浏览不允许错误。
      • 我认为这是一个重定向问题。也许不是 url 重写/路由的任务?
      • 好吧,我认为在这种情况下,您应该与系统管理员团队交谈并更新 IIS 设置。
      猜你喜欢
      • 2012-01-01
      • 2015-04-03
      • 2012-10-03
      • 2019-02-24
      • 1970-01-01
      • 2010-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多