IIS 7.5 上的 MVC5 路由错误 (404.0) 错误
Posted
技术标签:
【中文标题】IIS 7.5 上的 MVC5 路由错误 (404.0) 错误【英文标题】:MVC5 routing error (404.0) error on IIS 7.5 【发布时间】:2015-02-02 21:26:15 【问题描述】:一个古老的故事在开发机器上一切正常,但在主机服务器上却不行。
HTTP 错误 404.0 - 未找到
模块 IIS Web 核心 通知MapRequestHandler 处理程序静态文件 错误代码0x80070002通过将<remove name="UrlRoutingModule-4.0" />
添加到system.webServer - 模块 并在添加<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
时解决它,尝试在开发机器上产生相同的错误,但这在主机上不起作用。我也尝试过<modules runAllManagedModulesForAllRequests="true" />
,但没有任何改变。
这里是 handlers 部分:
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<remove name="WebDAV" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
<add name="MiniProfiler" path="mini-profiler-resources/*" verb="*" type="System.Web.Routing.UrlRoutingModule" resourceType="Unspecified" preCondition="integratedMode" />
</handlers>
更多信息:
MVC.Net 5.2.2.0 Windows 2008 上的 IIS 7.5 集成的 .Net 4.0 应用程序池。我还有什么需要做的吗?
现在,在 IIS8 中遇到了同样的问题,知道吗?
【问题讨论】:
更新:主机已经解决了我的问题,无需对我的 web.config 或库进行任何更改。我在问他们是怎么做到的,但还没有答案! 你是怎么解决这个问题的,可以分享一下吗?提前致谢。 我有一个共享主机,但他们没有告诉我他们是如何解决的。它应该是一些服务器配置或配置错误。对不起,我不能再帮忙了:( 我面临同样的问题,不知道如何解决。 下次试试看是否安装了ISAPi模块:Web server > modules如果没有,可以通过服务器管理工具安装:Role-based installation 【参考方案1】:我有类似的问题。原来是与虚拟文件夹名称和我为调用 Web API 路由而构建的 URL 不一致:
var URLGetUserAccesses = "/api/Login/GetUserAccesses";
对比
var URLGetUserAccesses = "../api/Login/GetUserAccesses";
【讨论】:
以上是关于IIS 7.5 上的 MVC5 路由错误 (404.0) 错误的主要内容,如果未能解决你的问题,请参考以下文章
Windows Server 2008 IIS 7.5 HTTP 错误 404.3 - Not Found解决办法
Windows Server 2008 IIS 7.5 HTTP 错误 404.3 - Not Found解决办法
HTTP错误 404.17 - Not Found" IIS 7.5 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理
如何确保使用 ASP.NET MVC5 和 IIS 7.5 express 刷新 CSS 文件