使用htaccess从URL中删除目录

时间:2014-05-02 07:54:12

标签: .htaccess mod-rewrite

谷歌选择了我的开发网站。它位于http://orangutan.org/OFI。我如何更改它,以便orangutan.org/OFI及其下的所有子目录被重定向到同一个地方但没有/ OFI / part。这个RewriteRule ^OFI((?:(?:\s*|/.*)$)) $1 [L,R=301,QSA]有效,除了它只有一个目录深。该URL转到404页面,例如:orangutan.org/OFI/about/dr-birute-mary-galdikas /

1 个答案:

答案 0 :(得分:0)

以下内容适用于您

RewriteEngine On
RewriteCond %{REQUEST_URI} ^(/OFI/(.*)|/OFI)$
RewriteRule ^(.*)$ /%2 [L,R=302]

它会将orangutan.org/OFI重定向到orangutan.org/,将orangutan.org/OFI/about/dr-birute-mary-galdikas/重定向到orangutan.org/about/dr-birute-mary-galdikas/

我看到你正在使用301重定向 - 当你不确定时,不要这样做,你的重定向工作正常。始终使用302进行测试,因为浏览器不会缓存302重定向。在尝试我在这里发布的htaccess之前,您可能需要清除浏览器缓存,因为您的浏览器肯定会缓存您的重写规则。