2014-03-02 46 views
0

在stackoverflow和其他地方有很多关于重定向的页面。但是,我找不到一个简单问题的解决方案:我希望每个以斜线结尾的请求都有一个永久301重定向到*/index。将每个以斜线(* /)结尾的请求重定向到*/index

实例:

http://example.com/ - 应该重定向到http://example.com/index

http://example.com/foo/ - 应该重定向到 http://example.com/foo/index

http://example.com/foo/bar/ - 应该重定向到 http://example.com/foo/bar/index

然而,不以斜线结尾的请求不应该被重定向:

http://example.com/foo - 无重定向。

http://example.com/foo/bar - 无重定向。

+0

http://stackoverflow.com/a/10175838/342740? – Prix

回答

2

试试这个试试看看它是如何工作的。

DirectorySlash Off 

RewriteEngine On 
RewriteRule ^(.*?)/$ http://example.com/$1/index [R=302,L] 

变化[R=302,L][R=301,L]当你确定它为你工作。

+0

谢谢,这个作品_almost_。它重定向http://example.com/foo/到http://example.com/var/www/foo/index ... – mdthh

+0

好吧,这对我现在有效:'RewriteRule ^(。*?)/ $ http://example.com/$1/index [R = 302,L]'你想编辑你的答案,所以我可以将其标记为接受的答案? – mdthh

+1

是的,你也可以在$ 1前使用/来解决这个问题。编辑。 –

相关问题