.htaccess将子文件夹重定向到域名

时间:2013-02-05 14:52:14

标签: .htaccess redirect root subdirectory

我在子文件夹(http://mydomain.com/subfolder/index.php)中有网站内容,现在我将所有内容复制到根文件夹(http://mydomain.com/index.php)。

我想使用.htaccess将所有已将旧网页加入书签的访问者重定向到新内容(至少是新的index.php)。

这是否正确:

RewriteEngine on
RewriteRule /subfolder/^(.*)$ http://mydomain.com [R=301,L]

我将.htaccess文件放在子文件夹或根文件夹中的哪个位置?

5 个答案:

答案 0 :(得分:27)

将以下.htaccess放在/(index.php所在的位置)应该可以解决问题:

RewriteEngine on
RewriteRule ^subfolder/(.*)$ /$1 [R=301,L]

或者您可以将以下.htaccess放入/subfolder

RewriteEngine On
RewriteRule ^(.*)$ /$1 [R=301,L]

请注意()周围的.*$1重定向/subfolder/someFile.php/someFile.php。如果您跳过它,/subfolder中的所有内容都会重定向到/

答案 1 :(得分:1)

尝试:

RewriteEngine On
RewriteRule ^subfolder/index.php$ /index.php[NC,L,R]

答案 2 :(得分:1)

由于评论中的@mariusnn,我得以解决此问题。


❌不起作用:.htaccess从子文件夹重定向到域名

RewriteEngine on

RewriteRule ^subfolder/(.*)$ /$1 [R=301,L]

Working :. htaccess将整个子域“ / subdomain /”重定向,并将其中的文件“ /subdomain/file_01.php”重定向到域名“ example.com”

RewriteEngine on

RewriteRule ^subfolder/.*$ / [R=301,L]

*请注意,()周围的.*$1/subfolder/someFile.php重定向到/someFile.php。如果您跳过它,则/subfolder中的所有内容都会重定向到/

答案 3 :(得分:1)

这可以解决问题:

RedirectMatch 301 ^/subfolder$ http://yourdomain.tld/

答案 4 :(得分:0)

在这里尝试了所有答案。这对我有用:

RewriteEngine on
RewriteBase /
RewriteRule ^subfolder/(.*)$ /$1 [R=302,NC,L]

在确认更改后,将R=302更改为R=301

相关问题