301在同一域内重定向目录

时间:2015-03-07 18:16:04

标签: wordpress .htaccess redirect

我的客户端目前在根目录中安装了WordPress,并在子目录中为成员资格区域安装了单独的WP。

她已将会员区域移至新域,现在想从原始站点删除成员目录。

但是,她希望将位于成员区域中的所有图像链接重定向到它们现在位于原始网站根目录中的位置。

例如:

当前路径是

example.com/members/wp-content/uploads/year/month/imagename.jpg

新路径

example.com/wp-content/uploads/year/month/imagename.jpg

所以/ uploads /之后的所有内容都需要从/ members / uploads /指向它现在所在的位置。

搜索过该网站和其他网站后,我尝试了几种不同的版本,但没有任何工作。

这是我尝试过的最后一个变种:

RewriteEngine on
RewriteBase /
RewriteRule ^members/(.*)$ http://example.com/$1 [R=301,L]

感谢您的帮助!

这是当前.htaccess文件的副本

RewriteEngine on
RewriteBase /
RewriteRule ^members/(.*)$ http://example.com/$1 [R=301,L]

# block referer spam
RewriteEngine On
RewriteCond %{HTTP_REFERER} buttons\-for\-website\.com
RewriteRule ^.* - [F,L]

RewriteOptions inherit
# BEGIN PopUpBypass
# END PopUpBypass

#Use PHP 5.4
# Use PHP54 as default
AddHandler application/x-httpd-php54 .php
<IfModule mod_suphp.c>
    suPHP_ConfigPath /opt/php54/lib
</IfModule>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

SetEnvIfNoCase Via evil-spam-proxy spammer=yes
SetEnvIfNoCase Referer evil-spam-domain.com spammer=yes
SetEnvIfNoCase Referer evil-spam-keyword spammer=yes
SetEnvIfNoCase Via pinappleproxy spammer=yes
SetEnvIfNoCase Referer semalt.com spammer=yes
SetEnvIfNoCase Referer poker spammer=yes

Order allow,deny
Allow from all
Deny from env=spammer

<Files "xmlrpc.php">
Order Allow,Deny
deny from all
</Files>

2 个答案:

答案 0 :(得分:0)

以这种方式尝试你的规则。

RewriteEngine on
RewriteBase /
RewriteRule ^members/(.*)$ http://example.com/$1 [R=301,L]

让我知道这是怎么回事。

答案 1 :(得分:0)

/members/.htaccess内尝试此规则:

RewriteEngine on

RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]