Google已将一些旧网址缓存到网站上不再存在的网页上。我想将任何404页面重定向到主页。
我有一个jetty安装,其中一个ROOT.war文件安装在jetty / webapps中。 ROOT.war文件包含一个WEB-INF / web.xml文件,其中包含以下内容:
<error-page>
<error-code>404</error-code>
<location>/</location>
</error-page>
但是,这只是重定向顶级文件,在子目录中没有任何内容。因此,以下URL将重定向到主页:
http://mysite.com/pageDoesntExist.html
但是这个没有,只是给出了404错误:
http://mysite.com/directoryDoesntExist/pageDoesntExist.html
有没有办法配置所有404进入主页?我可以在jetty / contexts目录中以某种方式执行此操作吗?
答案 0 :(得分:0)
您想使用org.mortbay.jetty.handler.MovedContextHandler: http://jetty.mortbay.org/xref/org/mortbay/jetty/handler/MovedContextHandler.html
Bots将使用Header 301 Redirect更新缓存google
答案 1 :(得分:0)
一个想法是:
<error-page>
<error-code>404</error-code>
<location>/error404.html</location>
</error-page>
(如Redirecting a 404 error page to a custom page of my Spring MVC webapp in Tomcat中所述)
然后在error404.html
内进行重定向:
<html>
<head><title>Redirecting...</title></head>
<body>
<script>
document.location.href="/";
</script>
</body>
</html>