gpt4 book ai didi

asp.net - 404 重定向仅针对页面,不适用于图像

转载 作者:行者123 更新时间:2023-12-02 16:04:15 25 4
gpt4 key购买 nike

我正在使用 ASP.NET MVC 应用程序。我在 web.config 中有以下条目来处理 404's

    <httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="/Error/Error404" responseMode="ExecuteURL" />
</httpErrors>

这对于请求页面时效果很好,它会重定向到我的 404 View 。然而,对于丢失的图像,它也会重定向到 404 页面,即。该图像的响应是 404 页面。

由于这是一个性能问题,有什么方法可以改变上述内容,以便只有来自“页面”的 404 而不是图像等资源触发到 404 页面的重定向?

最佳答案

我知道这是一个老问题了,但是我刚刚遇到了同样的问题,并且我能够根据我在 htaccess 中使用的内容提出一个解决方案。

下面的解决方案基本上检查文件是否具有图像扩展名,并且它不是文件也不是目录。之后,它会提供一个图像文件,我用它来识别丢失的图像。

<rule name="404 Images" stopProcessing="true">
<match url=".*" ignoreCase="true" />
<conditions>
<add input="{URL}" pattern="^.+\.(jpg|jpeg|png|gif|ico)$" ignoreCase="true" negate="false" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="true" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="true" negate="true" />
</conditions>
<action type="Rewrite" url="/design/images/404.png" />
</rule>

关于asp.net - 404 重定向仅针对页面,不适用于图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15599312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com