多语言网站的URL结构

时间:2016-02-13 18:02:04

标签: url seo single-page-application multilingual

我正在开发一个SPA网络应用程序,它将支持各种语言。它是使用AngularJS构建的,我使用angular-translate来提供i18n。

但是我对URL结构应该如何挣扎。我不打算使用通用顶级域名(gTLD)和ccTLD,因此我有三个选择。

  • 使用查询参数:?locale=en-us
  • 使用网址路径:/en-us/page
  • 将所选区域设置存储在localStorage或Cookie

根据Google的网络应用搜索引擎优化指南,第一个选项是禁止使用。所以这给我留下了最后两个选项。

我很难决定哪个更有利,但我倾向于相信使用网址路径可能会更加友好。

P.S:不确定这是否是提出这样一个问题的最佳地点。

2 个答案:

答案 0 :(得分:1)

第二个选项是您最安全的选择,因为根据https://webmasters.stackexchange.com/questions/59652/what-happens-if-i-try-to-set-a-cookie-on-a-bot Cookie会被忽略。您可以通过访问Google控制台并获取您的网站来自行测试。

截至目前,大多数抓取工具都会忽略Cookie并且不会执行JavaScript。这意味着他们通常只是下载html并从那里做出判断。

一些开发人员通过预渲染部分内容来解决无javascript问题。我没有亲自完成,但您可能想查看https://prerender.io/

修改

正如rolandjitsu提到谷歌抓取并执行javascript内容。

答案 1 :(得分:0)

您应该使用第二个选项:在网址路径as first segment中提供语言标记(以及可选的区域子标记)。

由于简单的原因,它允许您,访问者和机器人链接到特定的翻译。