0

我将 Tuckey UrlRewriteFilter 与 Tomcat 7 一起使用。我想缩短根文件夹中的一堆 URL,但又不会弄乱子文件夹等...

例如,我有类似...

/
/include/
/admin/
    page.jsp
    ...
/site/
    page.jsp
    ...
etc...

我想做类似的事情:

^/$  >>  /site/page.jsp?handle=home
^/(.*) >> /site/page.jsp?handle=$1

但是如何排除子目录?例如 /admin 仍然需要处理里面的文件。

我可以明确地将子目录重定向到另一个位置。但这不是那么优雅。

我也可以使用另一个子目录 - 例如 ^/s/(.*) 但我希望它们脱离根目录以提高可用性。

/
/features
/examples
/support
etc...

做这种事情的最佳方法是什么?

谢谢

4

1 回答 1

0

只需匹配不包含斜线的任何内容,如下所示:

RewriteEngine On
RewriteBase /
Options -MultiViews
RewriteRule ^$ /site/page.jsp?handle=home [L]
RewriteRule ^[^/]+$ /site/page.jsp?handle=$0 [L]
于 2013-03-10T18:43:45.700 回答