我正在使用asp.net,当我手动输入一个坏网址时(在浏览器中)它给了我:
无法找到资源。 说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确。
我想要一个不存在的错误网址重定向到主页。
我该怎么做?我正在使用站点地图。
答案 0 :(得分:6)
如果您无意让用户知道,则会重定向他们。然后,您可以打开自定义错误并执行以下操作:
<configuration>
<system.web>
<customErrors defaultRedirect="default.aspx" mode="On">
<error statusCode="404" redirect="default.aspx"/>
</customErrors>
</system.web>
</configuration>
答案 1 :(得分:1)
将此部分添加到web.config
:
<customErrors mode="On" defaultRedirect="{yourDefaultErrorPage}">
<error statusCode="404" redirect="{yourhomePage}"/>
</customErrors>
答案 2 :(得分:1)
正如其他人已经回答的那样,web.config是一种可行的方式。
另一个是来自您应用程序中的catch unhandled exceptions。这使您可以更好地控制重定向。
protected void Application_Error(object sender, EventArgs e)
{
HttpException httpException = Server.GetLastError() as HttpException;
if (httpException.GetHttpCode() == 404)
Response.Redirect("/MainPage.aspx");
}
请记住,如果您创建自己的404页面,则必须:
答案 3 :(得分:1)
如果可以,请尝试将您的404页永久重定向到类似的网址。
因此,不要回复404,而是对您网站上的类似网址做出301响应。最好的SEO智慧