新客户需要我的帮助,他们的网站开发人员搞砸了 - 在草稿/测试服务器上建立了网站但是忘了阻止Google等。我很感谢社区的帮助,我不是HTACCESS重定向的专家。< / p>
正如我所说,另一个网站开发者在他们的草稿服务器上设置了客户端草稿网站,它已经存在了几个月,但是他们忘了将它隐藏在搜索引擎中,因此内容已经被Google等编入索引 - 这将触发一个如果网站将新网站设为现场并且新网站无效,则会重复内容处罚。
我可以访问草稿站点/服务器并可以修改HTACCESS文件,因此当新站点上线时,我希望有正确的重定向。网站上有一些子域名(它是一个多语言网站),所以它有点棘手。
该网站建立在Wordpress上
网站结构在测试服务器上看起来像这样。所有文件页面名称和文件名都相同,只是移动到新服务器。
http://clientdomain.testserver.com
http://it.clientdomain.testserver.com
http://fr.clientdomain.testserver.com
http://es.clientdomain.testserver.com
http://de.clientdomain.testserver.com
http://ko.clientdomain.testserver.com
http://pt.clientdomain.testserver.com
http://ru.clientdomain.testserver.com
http://tr.clientdomain.testserver.com
http://cn.clientdomain.testserver.com
重定向需要到此处:
http://clientdomain.com
http://it.clientdomain.com
http://fr.clientdomain.com
http://es.clientdomain.com
http://de.clientdomain.com
http://ko.clientdomain.com
http://pt.clientdomain.com
http://ru.clientdomain.com
http://tr.clientdomain.com
http://cn.clientdomain.com
测试服务器上的现有HTACCESS文件如下所示
RewriteEngine On
RewriteBase /
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]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
我真的很感激任何帮助。
有一些现有的线程包含HTACCESS拼图的所有部分,但我有点困惑:
如何在.htaccess中从一个子域重定向到另一个子域? How can I redirect from one subdomain to another in .htaccess?
亲切的问候, GG
答案 0 :(得分:1)
如果是我,我不打扰乱搞重定向,从索引中删除网址。谷歌将在24小时内删除它们,现在有时会更快。
将开发域添加到您的网站站长工具帐户并进行验证。然后转到Google Index - &gt;删除网址;
只需在删除请求中输入值/
即可告知Google删除该域索引中的每个网址。
然后将阻止robots.txt
文件添加到站点根目录;
User-agent: *
Disallow: /
而我通常做的事情(尽管robots.txt和基本的身份验证保护 - git灾难/恶作剧,这已经发生了几次)让Google立即重新索引该网站。转到抓取 - &gt;获取为Google
将输入框留空,以便获取整个站点,然后点击“获取”按钮。当谷歌提取它时,点击“提交到索引”按钮。
如果幸运的话,你会惊讶地发现这种情况有多快发生。如果你幸运的话,过去需要几周时间。
修改强>
只是为了确保其他任何人都没有发现这种情况,阻止它获取索引的dev网站的最佳方法不是robots.txt文件或通过.htaccess文件使用Basic Auth(如前所述)提到很容易意外删除这些)。您应该通过vhosts文件在开发站点上启用Basic Auth。
答案 1 :(得分:1)
喜欢它不仅适用于谷歌......
您可以使用此.htaccess
:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^((?:..\.)?clientdomain)\.testserver\.com [NC]
RewriteRule ^ http://%1.com%{REQUEST_URI} [NE,L,R=301]