如何将一个目录中的所有文件重定向到另一个目录?

时间:2012-04-16 23:20:19

标签: apache .htaccess

我已将服务器上的文件移动到新目录,并希望301将所有请求重定向到新目录中的文件。

说我有:

  • domain.com/test/apples.php
  • domain.com/test/oranges.php
  • domain.com/test/bananas.php

如何将它们重定向到:

  • domain.com/apples.php
  • domain.com/oranges.php
  • domain.com/bananas.php

无需单独重定向每个人?

1 个答案:

答案 0 :(得分:4)

假设您正在使用带有mod_rewrite的服务器,请在您的根目录中创建名为“.htaccess”的文件并插入以下内容:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^test/(.*) http://domain.com/$1 [R=301,L]
</IfModule>

请注意,这会将测试目录中的每个文件重写为您插入的域。

如果您只想重定向.php文件,请使用:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^test/(.*).php http://domain.com/$1.php [R=301,L]
</IfModule>

备注: 不要忘记将domain.com更改为您的域名,此类重定向也会生成一个301 redirect,用于永久重定向文件的URL(这将有助于搜索引擎更新您的域名链接)。