【问题标题】:Getting Error 404 after deploying MVC on IIS due to query string由于查询字符串,在 IIS 上部署 MVC 后出现错误 404
【发布时间】:2016-05-06 15:09:51
【问题描述】:

我刚刚在我的 IIS 上部署了一个 MVC 应用程序,并且似乎在使用任何带有查询字符串的 URL 时遇到问题。

如果我打开“http://serverip/app/controller/action”,它可以正常工作,但如果我打开“http://serverip/app/controller/action/id”,我会收到错误 404。

我不知道该怎么办。我访问的一些链接没有帮助,也许我不明白解决问题的说明。

请帮忙。

【问题讨论】:

  • 你的动作方法有参数吗?你能说得更具体些吗?
  • 您能分享您的操作代码吗?你在使用属性路由吗?
  • 这是一个简单的链接,来自列出记录的表中的锚标记。 @Shyju,是的,它有一个参数: public ActionResult GetPayGroup(string id) {...}
  • 你的 IIS 和 MVC 版本和框架是什么?

标签: asp.net-mvc iis


【解决方案1】:

这通常是由 web.config 中缺少以下内容引起的:

<system.webserver>
   <modules runAllManagedModulesForAllRequests="true"/> 

【讨论】:

  • 我已经尝试过了,但错误仍然存​​在。我需要重新发布我的应用程序才能生效吗?我的运行时框架是 4.5 而我的 IIS 是 8
  • 你的 IIS 和 MVC 和 Framework 版本是多少?都一样?
  • 我添加了这个,一切正常。
【解决方案2】:

我有经验在Controller中抛出异常会导致发生这种错误。向前端返回 404 Not found 错误。因此,请确保在部署到任何其他环境后,如果 API 服务器没有任何配置或集成问题会导致发生异常

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-17
    • 2012-11-08
    • 1970-01-01
    • 2014-08-07
    相关资源
    最近更新 更多