我试图通过代码
来实现以下配置<customErrors defaultRedirect="GenericError.htm" mode="On"
redirectMode="ResponseRewrite">
<error statusCode="404" redirect="404.aspx"/>
</customErrors>
SEO - 处理404错误
if ((ex is HttpException && 404 == ((HttpException)ex).GetHttpCode()))
{
HttpContext.Current.RewritePath("~/404.aspx");
//Response.Redirect("~/404.aspx");
//Server.Transfer("~/404.aspx"); //Error executing child request for
}
问题:
如何在此处以编程方式设置redirectMode="ResponseRewrite"
?
我不想更改网址。
致电Response.Redirect
会将网址更改为/404.aspx并使用302 Http Status code
。
我设置了404.aspx的Response.StatusCode=404 in page_load
。
跟随http://weblogs.asp.net/paxer/archive/2010/05/31/asp-net-http-404-and-seo.aspx实施SEO友好404.但是通过代码
HttpContext.Current.RewritePath
根本没有工作
Server.Transfer 在Application_Error中有一些错误,请检查https://stackoverflow.com/a/13344446/1909604