为什么这些301重定向中的任何一个都不起作用?

时间:2016-02-04 16:18:23

标签: wordpress .htaccess redirect

我有一个Wordpress多站点,我正试图将其中一个站点的所有内容指向一个完全不同的域。我在下面尝试的例子中,没有一个重定向似乎做任何事情。

Options +FollowSymlinks
RewriteEngine on

#attempt one
Redirect 301 ^/multisite-one/.*$ http://newdomain.com/

#attempt two
RewriteRule ^multisite-one/$ http://newdomain.com/ [L,R=301]

#attempt three
RewriteCond %{REQUEST_URI} ^/multisite-one/(.*)$
RewriteRule ^(.*) http://newdomain.com/%1 [R=301,NC]

#attempt four
RewriteCond %{HTTP_HOST} ^multisite-one/$ [NC]
RewriteRule ^(.*)$ http://newdomain.com/ [R=301,L]

#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

关于我的设置:

  • 多站点设置为有2个主页,一个用于多站点,另一个用于多站点 - 两个。没有顶级索引页面。
  • 多站点共享页面模板。这两个网站结构相同,只包含不同的内容(即多站点 - 一个是客户服务,多站点 - 两个是如何)

我想要完成的事情:

http://mainsite.com/multisite-one/ redirects to http://newdomain.com/
http://mainsite.com/multisite-one/page2 redirects to http://newdomain.com/ 
http://mainsite.com/multisite-one/page8/pies redirects to http://newdomain.com/

http://mainsite.com/multisite-two/ does not redirect
http://mainsite.com/multisite-two/page2 does not redirect
http://mainsite.com/multisite-two/page8/tacos does not redirect

我已尝试在this similar question中所述的Wordpress代码中添加上述重定向。我也尝试了所有似乎相关的these

注意:我无法使用插件,因为它们当前已被禁用,而且我没有FTP访问权限。我必须使用linux命令行进行这些更新。显然这是一个可怕的情况。

2 个答案:

答案 0 :(得分:0)

虽然我更喜欢自己动手,但有许多插件可供您使用。我个人使用:

Redirect 301  /subsite/  http://newdomain.com/

这适用于我将子网站文件夹中的任何内容移动到新域地址,但保留了URL的其余部分。

如果您希望子网站中的所有内容都移至http://newdomain.com/并在网址中丢失所有内容,那么您的第二个应该可以使用

答案 1 :(得分:0)

在进行了更多谷歌搜索并考虑上面的Ben Rhys-Lewis回答后想出来。

RedirectMatch 301 ^/multisite-one(.*)$ http://newdomain.com/