我有一个类似的网址:120.xxx.xxx.xxx/myfile.pdf,但它不存在
它不直接指向我的error.aspx
谁能告诉我发生了什么事
和我的 web.config 代码
<customErrors mode="On" defaultRedirect="~/error.aspx">
<error statusCode="404" redirect="~/error404.aspx"/>
</customErrors>
我有一个类似的网址:120.xxx.xxx.xxx/myfile.pdf,但它不存在
它不直接指向我的error.aspx
谁能告诉我发生了什么事
和我的 web.config 代码
<customErrors mode="On" defaultRedirect="~/error.aspx">
<error statusCode="404" redirect="~/error404.aspx"/>
</customErrors>
这是因为这是一个静态文件,默认情况下会绕过 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 管道,因此您可以应用其他功能,例如身份验证/角色限制。