0

私は現在、Railsアプリケーションを開発しています。ローカリゼーション用。以下のようなアプローチを使いたいと思います。

  1. サイトトップページ
    プロトコル:http
    ドメイン:国コード間の複数のサブドメイン:en.myapp.com、it.myapp.com、fr.myapp.com

  2. アカウントページ
    プロトコル:https
    ドメイン:ユーザー間で言語を変更するためにi18nを使用する1つのメインドメイン。

SEOの場合、静的ページ(プロモーションページ)を国ごとに別々のサーバーに配置したいと思います。

私はherokuを使用しています。herokuサーバーの動的コンテンツと複数の異なるサーバーの静的コンテンツを接続するにはどうすればよいですか?

たとえば、ユーザーが静的ページからアカウントページを入力するときに、:localeのような属性を渡したいと思います。出来ますか?

編集
私はこの問題について検索しました、そして今、以下のアプローチが良いだろうと考えています。

サブドメインの静的ページを別のサーバーまたは別のHerokuアプリにホストします。ユーザーが各サブドメインページの言語を変更し、他のサブドメインページにリダイレクトするときに「:locale = ko-kr」のようなCookieを設定します:ko-kr.myapp.com

メインドメインとサブドメインの間でCookieを共有します(ユーザーがすでにログインしている場合は、データベース内で国とロケールのコードを使用します)。ユーザーがサインアップまたはログインページに入るときに、Cookieに基づいて言語を動的に変更します。

このアプローチは機能しますか?あなたが別のアプローチを知っているなら、私はそれを知りたいです。

4

1 に答える 1

0

どのdbストレージを使用していますか?MySQLでは、これは非常に難しい場合があります。

新しいプロジェクトIMOにとってやり過ぎであるデータベースシャーディングを体験したい場合を除いて、中央のMySQLサーバーが必要になります。中央サーバーを使用すると、MySQLとローカルカントリーサーバー間のレイテンシーは、ユーザーが別の国のサーバーにアクセスした場合に発生するレイテンシーよりもはるかに最悪になります。

私があなたなら、CDNにサインアップして、すべてのWebサイトでのサイトの読み込みを高速化します。セットアップが簡単。

そして、あなたがターゲットにしている国に物理的にサーバーを持っていることはあまり役に立ちません。これは、グーグルのランキング要素の非常に長いリストの1つのパラメーターであり、これまでに見つけたものからはそれほど重要ではありません。

于 2012-07-28T22:21:35.287 に答える