重定向到子目录未完全显示URL(.htaccess)

时间:2014-09-24 19:52:54

标签: wordpress .htaccess redirect directory

我正在使用wordpress并尝试将我网站上的某个页面指向另一个子目录,但是在加载时它正在删除目录。

示例:

要重定向的网址: example.com/blog/directory/

目标网址: example.com/blog/new-directory/more-directory/

最终网址 example.com/new-directory/more-directory/

它删除了“博客”目录,然后给了我一个404.请大家帮帮忙

使用.htaccess更新:

<IfModule mod_rewrite.c>
RewriteEngine On
Options +FollowSymLinks

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
RedirectMatch 301 /blog/files/(.*) /files/$1
RedirectMatch 301 /blog/directory/(.*) /blog/new-directory/more-directory/$1

</IfModule>

2 个答案:

答案 0 :(得分:0)

如果您可以访问example.com/blog/directory/的页面html文件,只需在文件中插入以下代码

<META http-equiv="refresh" content="0;URL=example.com/blog/new-directory/more-directory/">

答案 1 :(得分:0)

不要将mod_alias规则与mod_rewrite混合,并在WP规则之前设置为301。

这应该在您的/blog/.htaccess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/

Options +FollowSymLinks

RewriteRule ^files/(.*)$ /files/$1 [L,R=301,NC]
RewriteRule ^directory/(.*)$ new-directory/more-directory/$1 [L,R=301,NC]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]

</IfModule>