【发布时间】:2019-12-19 21:24:28
【问题描述】:
我有一个使用域名foo.cz 的 (Joomla) 网站。
本网站有如下结构的语言突变:
foo.cz/music (the default CZ language has no specific directory)
foo.cz/en/music
foo.cz/fr/music
foo.cz/de/music
foo.cz/es/music
foo.cz/ru/music
现在我注册了新域 bar.com,我想保持 .cz 网站原样(针对捷克用户),但我需要将其语言突变永久重定向到 bar.com 上的等价物,所以重定向应该是:
foo.cz/music -> do nothing, no redirect, stay where you are!!!
foo.cz/en/music -> bar.com/en/music
foo.cz/fr/music -> bar.com/fr/music
foo.cz/de/music -> bar.com/de/music
foo.cz/es/music -> bar.com/es/music
foo.cz/ru/music -> bar.com/ru/music
请注意,两个域都指向同一个位置,服务器上的同一个文档根目录,所以在物理上,我仍然有一个站点,一个数据库,托管在一个确切的位置。
我想使用.htaccess 文件来做这件事,以某种巧妙的方式来避免一些 SEO 和 Google 页面排名受损。这意味着.cz 默认语言站点内容将保持原样索引,其他语言突变将在新域bar.com 下重新索引。
两个网站都运行在https。
我在.htaccess 中尝试过这样的事情:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?foo\.cz$ [NC]
RewriteRule ^ http://bar.com%{REQUEST_URI} [L,NE,R=301]
...但它不起作用...我不想重定向所有内容,只有语言突变。那么我应该在RewriteCond 中指定语言目录吗?如何?或者有没有更好的解决方案?还是我想错了,这不仅仅是因为两个域的托管相同?非常感谢您的帮助!
【问题讨论】:
标签: apache .htaccess redirect mod-rewrite multilingual