RewriteRule用于多个子目录

时间:2017-01-26 12:30:41

标签: apache .htaccess redirect mod-rewrite

我似乎找不到这个问题的答案。

我的网站包含多种具有子目录结构的语言。现在我需要将它们从index.htm自动重定向到/

e.g。

agb-german/index.htm -> agb-german/
agb-english/index.htm -> agb-english/

当然我可以为每种语言创建一个重定向,但我认为重写也会为性能做得更好。

所以我需要像

这样的东西
RewriteRule ^agb-(.*)/index.(.*)$ /agb-{how-to-get-this-from-the-request?}/ [R=301,L]

1 个答案:

答案 0 :(得分:1)

您可以使用此规则:

RewriteCond %{THE_REQUEST} /agb- [NC]
RewriteRule ^(agb-\w+)/index\. /$1 [R=301,L,NC]

我们匹配来自输入网址的agb-\w+,并使用括号(...)我们在$1中捕获匹配的值。