通过htaccess将子目录中的所有文件重定向到root

时间:2017-04-01 17:47:51

标签: apache .htaccess redirect mod-rewrite

我想将域名子目录中的所有文件重定向到根目录,以便从URL隐藏子目录。例如,我希望www.domain.com/blog/test1.php重定向到www.domain.com/test1.phpwww.domain.com/blog/test2.php重定向到www.domain.com/test2.php等。

如何通过.htaccess文件实现此目的?到目前为止我尝试的所有内容只是将子目录中的所有文件重定向到www.domain.com。 谢谢您的帮助。

我尝试过使用:

RedirectMatch 301 ^/blog/$ example.com
RewriteRule /blog/(.*) /$1 [PT]
RewriteCond %{HTTP_HOST} ^www.example.com 
RewriteRule ^blog/(.*)$ example.com/$1 [L,R=301] 

这一切只是重定向到www.example.com

1 个答案:

答案 0 :(得分:0)

我自己只是在学习mod_rewrite,但我认为你还有一个额外的' /'在第一个RewriteRule和第二个中不必要的主机名。我相信这值得一试:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^blog/(.*) $1 [L]
</IfModule>