将语言选择器放在域名中或作为 URL 路径的一部分

将语言选择器放在域名中或作为 URL 路径的一部分

我的意思是

  • www.my-domain.de/start.html
  • www.my-domain.com/start.html

或者

  • www.my-domain.com/de/start.html
  • www.my-domain.com/en/start.html

我在这里主要关心的是 SEO(我读了常见问题解答,知道 SEO 管理是主题)。对我来说,两个域名的解决方案似乎更好,但大多数框架似乎更喜欢只使用一个域名。我发现绕过它不会使代码变得更难。所以从技术上讲,我没有偏好。

答案1

您的第二个变体具有最佳的 SEO 属性。它将所有 PageRank 保留在单个站点上,并限制意外为相同内容创建重复 URL 的风险。

对我来说,真正的问题是,您在每个国家/地区是否都有“足够大且足够独特”的子公司/代理商/子社区,需要自己的网站?符合条件的需求可以是以下任何内容:

  • 想要一个本地域名作为电子邮件地址
  • 内容更新时间表与父网站不同的网站
  • 只需要一个本地站点,让当地社区感受到独立

如果你没有这样的组织/文化需要单独的网站,那么我的一般建议是第二种方案是,服务器端自动重定向到用户最可能使用的语言。当然,HTML 页面上还有可见的语言覆盖,以便用户可以在自动检测中纠正错误。

语言选择本身就是一门艺术。老式的方法是使用启动页面,让用户自己选择语言。这种方法很管用,但有点丑。

接下来是基于浏览器 accept-language 标头的服务器端 302/303 重定向。这有点管用——但有些浏览器配置错误,fx 公司工作站设置为公司语言英语,而不是本地语言。

最后是根据请求的 IP 地址进行服务器端重定向,并与地理位置数据库进行匹配,例如来自 Maxmind。同样,这种方法是可行的,但我从经验中知道它并不完美——我来自丹麦,但我的 ISP 在瑞典购买了他的对等网络,所以我经常收到瑞典语短信。:-O 当我旅行时,情况更糟......

基于IP地址的服务器端语言选择好像是现在最常见的,至少Google,Skype等很多公司都是这么做的。

最后一件事,我注意到 Mozilla 和其他一些网站已经开始使用“en-US”之类的区域代码,而不是“en”或“eng”之类的语言代码。这可能是一种短暂的流行趋势,也可能是持久的——对我来说,它确实设定了内容完全本地化而不仅仅是翻译的期望。

答案2

只要用户可以“预测”页面上使用的本地化,这两种方法都很好。我不是 SEO 专家,但我猜第二种情况会为 my-domain.com 带来更好的 SEO 权重。

相关内容