我正在运行多站点WoprdPress安装,我已将安装配置为使用子域。
我已经注册并添加了一个域名域名,这是我的主要网站。
我最近注册了两个主域名:domain-a和domain-c,我已经指出了我的多站点的DNS记录IP地址。
我需要kazisport.co.za和kazisportsoccer.co.za重定向到phakathi.co.za中的某个类别。
即:
kazisport.co.za和kazisportsoccer.co.za
重定向到:
我尝试的第一个选项是在我的多站点网络中创建第二个站点,并将这两个域映射到站点。然后我激活了一个主题。在主题中,我使用PHP重定向代码重定向到域中的类别 - 如下所示:
<?php
if($_SERVER['HTTP_HOST'] == 'domain-b.co.za' || $_SERVER['HTTP_HOST'] == 'domain-c.co.za')
{
header("Location: http://domain-a.co.za/category/sport/");
exit;
}
?>
在某种意义上,这导致了重击和错过,有时候重定向会起作用,有时它也行不通。
然后我用这样的JavaScript替换了PHP重定向代码:
<html>
<head>
<script>
function gotoPage()
{
var dns1 = "domain-b.co.za";
var dns2 = "domain-c.co.za";
var urlloc = location.href;
var loc = urlloc.toLowerCase();
if (loc.indexOf(dns1) != -1){
location.href="http://domain-a.co.za/category/sport/";
}
else if (loc.indexOf(dns2) != -1){
location.href="http://domain-a.co.za/category/sport/";
}
}
</script>
<body onLoad="gotoPage()">
</body>
</html>
这也导致了打击和错过。有时重定向会起作用,有时它不起作用。 然后我尝试了像这样的htaccess重定向:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^domain-b.co.za$
RewriteRule ^$ http://domain-a.co.za/category/sport/$1 [L,R=301]
RewriteRule ^(server-info|server-status) - [L]
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteCond %{REQUEST_URI} !^/php5.fastcgi/*
RewriteRule ^(.*\.php)$ $1 [L]
RewriteCond %{REQUEST_URI} !^/php5.fastcgi/*
RewriteRule . index.php [L]
</IfModule>
# END WordPress
那根本不起作用。我不知所措,我不知道我需要做什么才能重定向工作。我真的很感激任何反馈。
哦,我需要提一下我正在使用Varnish Cache。
答案 0 :(得分:0)
您可能会对名为Redirection的插件感到幸运。安装插件后,请转到:
(免责声明:上述内容适用于单个网站,在多网站上可能会有所不同。)