AspNet Mvc 路由解析中添加.html 等后缀 出现404错误的解决办法

使用Mvc 有时候我们希望,浏览地址以.html .htm 等后缀名进行结尾。

于是我们就在RouteConfig 中修改路由配置信息,修改后的代码如下

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

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}.html",
                defaults: new { controller = "Public", action = "Login", id = UrlParameter.Optional }
            );

但是访问的时候,提示404 ,怎么办那?是哪里出了问题,查了一下最简单的方式为:

在Web。config 中 新增配置

system.webServer 下 新增

<modules runAllManagedModulesForAllRequests="true"></modules>  就Ok 了

解释如下:

runAllManagedModulesForAllRequests 到底是什么东西呢?

其意思就是为所有 Modules 管理请求的一个开关,如果设置为 true,就是把 所有请求 到 Modules 的通道打通了,没有任何阻拦,那 Modules 又是什么呢?字面意思可以理解为“模块”或“单元”的意思,它是属于 Web 服务器的东西,和 Web 应用程序不太相关,Web 应用程序只是对它发起一个请求,Modules 的相关东西,可以看下这一篇非常好的文章: IIS Modules Overview 。

总结:对于404 路由解析的问题  应该还有其他的解决办法,这种方式估计也有弊端。

参考网址:http://www.mamicode.com/info-detail-448415.html

时间: 2024-12-26 17:00:55

AspNet Mvc 路由解析中添加.html 等后缀 出现404错误的解决办法的相关文章

linux 编译中required file `./ltmain.sh&#39; not found 错误的解决办法(转)

在linux下编译c/c++程序出错:$ automake --add-missing....configure.in:18: required file `build/ltmain.sh' not found .... -------------------------------------------------------- 解决方案(libtoolize配置即可): $libtoolize --version-libtoolize (GNU libtool) 1.4.2.....$li

virtualbox 中的linux 共享文件 发生文件系统类型错误的解决办法

转自:http://blog.csdn.net/ls1160/article/details/24913391 最近在研究linux下的安卓源代码编译,遇到了一些问题,在虚拟机的共享文件上. 因为联网下载安卓源代码太慢了,如果按照老罗的方法的话,于是就自己离线下载了包,打算直接共享到linux虚拟机里面使用. 在实验室直接共享就可以了,但是编译的话,由于linux是32位的,产生了一些错误不知道怎么解决了.于是就想着换到64位,但是,这个时候共享文件就出了问题. 后面查资料还是解决了. [网上的

C# AE开发 报错 没有注册类 检索 COM 类工厂中 CLSID 为 { } 的组件时失败 错误的解决办法

原因很可能是没有添加对AE使用的许可!!! 两种方法添加 1.可以手动添加控件到窗体上.(这种方式添加的许可,PoJie版可能到开发后期会闪退.) 2.代码方式添加许可.   参考:https://www.cnblogs.com/aegisada/p/3924292.html 原文地址:https://www.cnblogs.com/tigerK/p/11978427.html

VMWare 12虚拟机启动过程中提示“虚拟设备ide0:1无法连接”错误的解决办法

在VMWare 12上装好系统之后,正常地关闭.过了一天再次启动虚拟系统的时候,却提示"虚拟设备ide0:1无法连接"的错误,上网搜索一下并无找到具体的解决办法.强制关闭虚拟系统后,到虚拟机配置界面,找到CD/DVD配置一栏,将"启动时连接"前面的钩去掉即可解决此问题.之所以会出现这个问题是由于宿主主机并没有CD/DVD这个物理设备,所以如果钩选了"启动时连接"的话,系统会因为找不到真实的设备而报"虚拟设备ide0:1无法连接"

jsp页面中添加 enctype=&quot;multipart-formdata&#39;无法提交到后台得解决思路

解决产品添加页面中有提交文件的解决思路 设计原则 在jsp页面的表单里面 <form action="ArticleServlet" enctype="multipart/form-data" method="post"> <input type="hidden" name="method" value="add"> <div>  <input

ASP.NET MVC 3 loginUrl自动变成Account/Login,并且发生404错误的解决方法

http://www.cnblogs.com/think8848/archive/2011/07/08/2100814.html ASP.NET MVC 3 loginUrl自动变成Account/Login,并且发生404错误的解决方法 在ASP.NET中使用 <authentication mode="Forms">时,如果在forms配置节中,没有指定loginUrl,那么根据MSDN上的说法,默认值是login.aspx,在指定loginUrl时,就使用指定的Url

MVC MVC常见错误及解决办法

MVC常见错误及解决办法 问题1: 必须添加对程序集“EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用. 解决方案: vs中 tools——nuget包管理器——管理解决方案的nuget程序包 通过这种方式更新或者降低版本来解决此错误: 参考地址: http://www.cnblogs.com/melodygkx/p/6044856.html 问题2: 无法识别的元素“pr

MVC.Net:对MVC5部署时出现403.14错误的解决方法

当我们部署MVC5到IIS 7的时候,有时会出现403.14的错误,如下图: 对于这个错误的解决方法就是在应用程序的web.config的system.webServer节点中加入这一句: <modules runAllManagedModulesForAllRequests="true"></modules> 如下例: <system.webServer> <!-- 此行必须有,否则IIS7无法启动 --> <modules ru

[Android学习笔记]ListView中含有Button导致无法响应onItemClick回调的解决办法

转自:http://www.cnblogs.com/eyu8874521/archive/2012/10/17/2727882.html 问题描述: 当ListView的Item中的控件只是一些展示类控件时(比如TextView),注册ListView的监听setOnItemClickListener之后,当点击Item时候会触发onItemClick回调. 但是,当Item中存在Button(继承于Button)的控件时,onItemClick回调不会被触发. 解决方案: 在Item的布局文件