asp.net - IIS 通配符映射不适用于 ASP.NET

标签 asp.net iis

我通过添加“C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll”在 IIS 6 上设置了通配符映射,并确保不选中“验证该文件存在”:

  • 在 IIS 的“网站”目录中
  • 在网站上

但是,在 iisreset 之后,当我转到 http://myserver/something.gif 时,我仍然收到 IIS 404 错误,而不是 asp.net 错误。

有什么我错过的吗?

精度:

  • 这不适用于使用 ASP.NET MVC
  • 我不想使用 iis 404 自定义错误页面,因为我有一个用于记录错误的 httpmodule(这是一个低流量的内部站点,因此通配符映射性能损失不是问题;))

最佳答案

您需要在 gif 文件的 Web 配置中添加 HTTP 处理程序:

  <system.web>
    <httpHandlers>
      <add path="*.gif" verb="GET,HEAD" type="System.Web.StaticFileHandler" validate="true"/>
    </httpHandlers>
  </system.web>

这会强制 .Net 处理该文件,然后您将收到 .Net 错误。

“/”应用程序中的服务器错误。

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

请求的 URL:/test.gif

<小时/>

版本信息:Microsoft .NET Framework 版本:2.0.50727.1433; ASP.NET版本:2.0.50727.1433

关于asp.net - IIS 通配符映射不适用于 ASP.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/101326/

相关文章:

c# - 在 AngularJS $http 中传递日期到 ASP.NET Web Api

c# - 我们如何处理 IIS 上 ASP.NET MVC 应用程序的异常

.net - EventLog.SourceExists 在 Windows Server 2019 上失败

rest - HTTP 动词 PUT 和 DELETE : 405 Method not allowed - how to allow?

php - 使用 IIS 实现搜索引擎友好的 URL

c# - SMTP 友好名称在 3 个不同的地方——仍然没有显示

asp.net - 如何以编程方式创建 "true"Excel 文件

c# - ASP.NET Core 2.1 区域路由不起作用

c# - ASP.NET MVC 在 ViewModel 中包含 List 属性的回发列表后为空

c# - 为测验评分的正确方法