我现在正在开发一个rails应用程序。 用于本地化。我想使用下面的方法。
网站热门页面
协议:http
域名:国家/地区代码之间的多个子域名:en.myapp.com,it.myapp.com,fr.myapp.com
帐户页面
协议:https
domain:使用i18n在用户之间更改语言的一个主域。
对于SEO,我想将静态页面(促销页面)放在国家/地区之间的单独服务器中。
我正在使用heroku。如何连接heroku服务器上的动态内容和多个不同服务器中的静态内容?
例如,当用户从静态页面输入帐户页面时,我想传递属性如:locale。有可能吗?
修改
我搜索了这个问题,现在想下面的方法会很好。
将子域静态页面托管到单独的服务器或单独的Heroku应用程序中。 当用户更改每个子域名页面中的语言并重定向到其他子域名页面时,设置类似“:locale = ko-kr”的cookie:ko-kr.myapp.com
在(如果用户已经登录,使用数据库中的国家/地区和区域代码)主域和子域之间共享cookie。当用户进入注册或登录页面时,根据cookie动态更改语言。
这种方法有效吗?如果你知道其他方法,我想知道。
答案 0 :(得分:0)
您使用的是什么数据库存储? 使用MySQL,这可能变得非常棘手。
您需要一个中央MySQL服务器,除非您想要体验数据分片,这对于新项目IMO来说是过度的。 使用中央服务器,MySQL与本地国家/地区服务器之间的延迟将远远低于用户在访问其他国家/地区的服务器时可能遇到的延迟!
如果我是你,我只需要注册一个CDN,以加快所有网站的网站加载速度。易于设置。
在您所定位的国家/地区拥有一台服务器并不会有太大帮助。这是谷歌排名因素中很长的一个参数...而且不是我迄今为止发现的非常重要的参数。