重定向至特定资源的 404 页面
本文关键字:页面 资源 重定向 | 更新日期: 2023-09-27 18:35:22
我如何为特定请求强制 404 错误?
我不希望从网站中排除该页面。
但是,如果用户请求以下两个文件,我将始终返回 404 错误页面NotFound.aspx
/site/employee/pensionplan.aspx
/site/employee/pensiondoc.pdf
有人告诉我not to use the web.config for 404 error configuration, due to some security issues
.我不确定到底是什么问题
<!-- Turn on Custom Errors -->
<customErrors mode="On"
defaultRedirect="DefaultRedirectErrorPage.aspx">
<error statusCode="404" redirect="Http404ErrorPage.aspx"/>
</customErrors>
当用户尝试访问特定资源时,将用户重定向到Not Found
页面的最佳方法是什么?
为了方便起见,请将其放在您的Http404ErrorPage.aspx
代码隐藏中:
protected void Page_Load(object sender, EventArgs e)
{
Response.StatusCode = 404;
}
并在您的 web.config 中拥有这个:
<location path="site/employee/pensionplan.aspx">
<system.webServer>
<httpRedirect enabled="true" destination="http://www.website.com/Http404ErrorPage.aspx" httpResponseStatus="Permanent" />
</system.webServer>
</location>
<location path="site/employee/pensiondoc.pdf">
<system.webServer>
<httpRedirect enabled="true" destination="http://www.website.com/Http404ErrorPage.aspx" httpResponseStatus="Permanent" />
</system.webServer>
</location>
一个更强大的解决方案是使用MikeSmithDev推荐的HttpHandler
,这样您就可以控制用户是否为404。