如何在动态Web项目中重定向用户,以便在他打开 localhost:8080 / pageName 时,他实际上打开了 somepage.html ,这是在我的WebContent中夹?我在web.xml中写什么来实现呢?
我希望用户输入 localhost:8080 / pageName ,但实际上会看到 localhost:8080 / somepage.html
答案 0 :(得分:0)
您可以使用过滤器。此URL显示如何安装jar,并修改您的web.xml: http://tuckey.org/urlrewrite/
您的重写文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 3.2//EN"
"http://tuckey.org/res/dtds/urlrewrite3.2.dtd">
<urlrewrite>
<rule>
<name>pageName Redirect</name>
<from>^/pageName$</from>
<to>/somepage.html</to>
</rule>
</urlrewrite>
编辑:
我的示例不会更改用户浏览器中的URL。当您希望多个URL显示相同的内容时,它的表单很有用。
如果您想更改网址,请对上面的代码进行更改:
<to type="redirect">/somepage.html</to>
这不会向用户发送要显示的浏览器内容,而是向浏览器发送页面已移动的消息,并且应该透明地修改浏览器URL,然后加载该页面。