我正在使用 CodeIgnitore 开发一个多语言网站。目前我已经设置路由如下。
$route['default_controller'] = "home";
$route['^(en|fr)/(.+)$'] = "$2";
$route['^(en|fr)$'] = $route['default_controller'];
$route['404_override'] = '';
现在我可以使用以下 URL 访问主页
- domain.com
- domain.com/en
这两个 URL 都以英文显示主页,因此这会因重复内容而受到惩罚并影响 SEO。我有其他 URL 会导致同样的问题。有什么解决办法吗?
谢谢。
最佳答案
您可以重定向 domain.com -> domain.com/en。
所以你没有重复的内容。
在你的 home.php (application/controllers/home.php) 中:
function __construct(){
parent::__construct();
if(!preg_match("/(en|fr)/",$_SERVER['HTTP_HOST'])){
$this->load->helper('url');
redirect('/en', 'location', 301);
}
}
关于php - 多语言 URL 结构上的重复内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22634915/