0

我有一个类似的网址:120.xxx.xxx.xxx/myfile.pdf,但它不存在

它不直接指向我的error.aspx

谁能告诉我发生了什么事

和我的 web.config 代码

<customErrors mode="On" defaultRedirect="~/error.aspx">
      <error statusCode="404" redirect="~/error404.aspx"/>
</customErrors>
4

1 回答 1

1

这是因为这是一个静态文件,默认情况下会绕过 ASP.Net 并由 IIS 提供服务。尝试将此添加到您<system.webServer>的 web.config 部分:

<handlers>
      <add name="PDFHandler-Integrated" path="*.pdf" verb="GET"
        type="System.Web.StaticFileHandler" modules="ManagedPipelineHandler"
        requireAccess="Script" preCondition="integratedMode" />
</handlers>

这样做会使其通过 ASP.Net 管道,因此您可以应用其他功能,例如身份验证/角色限制。

于 2013-01-17T03:13:39.310 回答