1

我有一个翻译成 18 种语言的网站(有 18 个翻译域)。它还具有基于语言的动态内容,即不同的产品,其中一些仅以特定语言提供。虽然有一个语言选择器,人们可以使用它来切换语言并因此切换站点,但该人以他不知道的语言找到语言选择器的机会并不太高。这是解决问题的关键,尤其是付费广告流量如果不加以处理就会被浪费。

我将 Akamai 用作 CDN,并希望在 JS 中进行检测和重定向,理想情况下是在边缘服务器层上,因此它不是另一个必须返回源服务器的调用。在浏览了他们的所有文档、UI 中的配置选项等之后,我没有看到这样做的方法。

虽然我确实与我的 Akamai 代表取得了联系,并与他们的一位工程师一起提出了解决方案,但我不知道它是否是最好的解决方案,并且对其他解决方案持开放态度。

4

2 回答 2

1

Akamai 有一项名为(我上次检查)“内容定位”的服务,以前称为“Edgescape”。在边缘,Edgescape 为每个传入请求添加一个名为“x-akamai-edgescape”的第 7 层 (http) 标头,并提供有关最终用户的大量信息:

城市、州、国家、邮政编码、区号、ISP、ISP 吞吐量(DSL、卫星)……等等。

一旦您将该信息添加到请求标头中,您(原始服务器)就可以根据该信息做出决定,例如,如果 country=ES,则重定向到 spanish.yourdomain.com。或者,您可以让 Akamai 使用边缘逻辑做出这些决定。他们的服务器可以读取带有国家值的传入 HTTP 标头并在边缘创建重定向。他们甚至可以添加一个 cookie 值,指定在后续请求中点击哪个站点。cookie 的内容仅取决于您的偏好和所需的应用程序行为。

如果您可以访问 Akamai 客户门户,请查找 Edgescape 文档和 ACO(高级缓存优化——读取标头/cookie 并根据它们做出决策的能力)。

祝你好运。

ps Edgescape 和 ACO 是 Akamai 的附加模块,但您可能已经拥有它们,或者能够以很少或免费的成本添加它们作为续约合同的一部分。

于 2012-09-27T15:31:31.527 回答
0

虽然不在 UI 本身中,但他们已经设置了一种方法来做到这一点。您为他们提供针对接受语言标头的域映射(是的,我确实认为最好使用接受语言,因为我要在网站上更改的只是语言和语言相关设置),他们的工程师将配置它会在边缘根据该标头自动重定向到正确的域。另外,他们会给那个人一个cookie,以检测他们重定向了他。这样,如果他使用语言选择器或遵循另一种语言特定的链接,它不会再次自动重定向他,但现在让他去他想要的地方 - 所以它不会强迫他选择。

显然,唯一的缺点是,如果我需要更改它,那么我必须重新检查所有内容以修复它,而不是自己动手——除非我忘记了什么。

于 2012-09-27T04:04:46.880 回答