【问题标题】:MVC 3.0 cannot route a url with double dots at the endMVC 3.0 无法路由末尾带有双点的 url
【发布时间】:2012-03-21 15:44:12
【问题描述】:

假设有如下链接:

domain.com/Link/Details/60/AbiWord-2.6.5-is-a-free-software-word-processor--Wind%2cMac%2cLinux%2c..

由于有两个点和结尾,mvc 被我认为的扩展名弄糊涂了。 因此,我只是面对“'/' 应用程序中的服务器错误。”。

描述:HTTP 404。您要查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请查看以下 URL 并确保其拼写正确。

 routes.IgnoreRoute("{resource}.axd/{*pathInfo}");



        routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
        );

                    routes.MapRoute(
            "ViewLink", // Route name
            "{controller}/{action}/{id}/{title}", // URL with parameters
            new { controller = "Home", action = "Link", id = UrlParameter.Optional, title = UrlParameter.Optional } // Parameter defaults
        );

当我删除最后两个点时,我的页面将被加载。那么如何处理这个问题呢?我不想删除那些点

【问题讨论】:

  • SO不是用MVC3写的吗?它在这个网站上运行良好。我认为这是您的服务器配置。你在什么服务器上运行这个?
  • 是的,它在 mvc 3 中,什么意思是什么服务器?肯定是windows服务器。
  • 您的具体异常详情是什么?
  • 当我删除最后两个点时,我的页面将被加载。那么如何处理这个问题呢?我不想删除那些点
  • IIS 6 ,IIS 7 , IIS 7.5?您收到的是 HTTP 404、HTTP 500 还是什么?

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


【解决方案1】:

所以这里的问题是请求甚至没有到达 ASP.NET MVC。网络服务器在到达之前将其视为一个问题。 :(

除了转义点或删除尾随的点,不知道你能做什么。

【讨论】:

    猜你喜欢
    • 2012-09-09
    • 2016-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-26
    • 2015-12-26
    • 1970-01-01
    • 2016-04-13
    相关资源
    最近更新 更多