在这里,http://book.cakephp.org/2.0/en/core-libraries/internationalization-and-localization.html#localization-in-cakephp是写的
从一个独特的URL中提供多种语言的公共内容是个好主意--这使得用户(和搜索引擎)很容易找到他们想要的语言中的内容。
假设我有一个以这种方式创建的网站,英语和俄语。默认的语言是英语,所以当我打开example.com时,它是英语的。如果我点击俄语链接,页面将被重新加载(会话变量Config.language被设置为rus),并且相同的页面example.com变成了俄文。因此,假设SE爬行我的网站,并有相同的页面example.com的内容以两种不同的语言。
问题1
这张健全的床不是SEO的,并且SEs对这类事情有一些惩罚-相同的url与多个内容可用?
现在我用俄语搜索一些东西,谷歌向我展示了带有俄语标题和元描述(或页面中的一些文本)的example.com --所以我点击了该链接,但是由于会话没有设置为俄语,我将看到英语内容。
问题2
毕竟,这不是一种床上练习吗?因为这对用户来说是很棘手的,因为他们点击了一些东西,看到了别的东西?
谢谢
发布于 2013-12-09 22:12:29
是的,使用相同的URL加载不同的内容是错误的做法。
我见过的常见做法是使用语言前缀。例如:
example.com/eng/articles/article123
example.com/rus/articles/article123或
example.com/en/articles/article123
example.com/ru/articles/article123然后,在您的AppController中,您可以检测前缀(在您的路由中设置之后),并根据该前缀设置要使用的语言。
你也可以使用不同的段塞,但根据我所读到的,大多数英语默认使用英文段塞-尤其是如果其他语言使用的字符不是URL友好。
编辑:
按照James下面的观点,使用子域也可以。
https://stackoverflow.com/questions/20481755
复制相似问题