2012-07-28 20 views
0

我正在開發一個rails應用程序。 用於本地化。我想要使​​用下面的方法。如何在軌道上分離帳戶頁面和頂部頁面

  1. 網站的熱門網頁
    協議:HTTP
    域:國家代碼之間的多個子:en.myapp.com,it.myapp.com,fr.myapp.com

  2. 帳戶頁
    協議:https
    域:一個使用國際化域名來改變用戶之間語言的主域。

對於搜索引擎優化,我想把靜態頁面(促銷頁面)放到不同國家的服務器之間。

我正在使用heroku。如何連接heroku服務器上的動態內容和多個不同服務器上的靜態內容?

例如,當用戶從靜態頁面輸入帳戶頁面時,我想要傳遞如下屬性:locale。可能嗎?

編輯
我搜索了這個問題,現在想下面的方法將是一件好事。

將子域靜態頁面放入單獨的服務器或單獨的Heroku應用程序。 設置cookie的像「:區域= KO-KR」,當用戶在每個子頁改變語言,並重定向到其他子域名頁面:ko-kr.myapp.com之間

分享的cookie(如果用戶已經登錄,使用的國家和區域代碼在數據庫內)主域和子域。當用戶進入註冊頁面或登錄頁面時,根據cookie動態改變語言。

此方法是否有效?如果你知道其他方法,我想知道。

回答

0

你使用的是什麼數據庫存儲?使用MySQL,這可能變得非常棘手。

你需要一箇中央MySQL服務器,除非你想體驗db sharding這對於一個新的項目IMO來說是過分的。 對於中央服務器,MySQL與您本地國家/地區服務器之間的延遲將遠遠低於用戶訪問其他國家/地區的服務器時可能遇到的延遲!

如果我是你,我只需註冊CDN,以加快所有網站的網站加載速度。易於設置。

而在目標國家有一臺服務器並沒有什麼幫助。這是谷歌排名因素很長的名單中的一個參數......並不是我迄今發現的非常重要的一個參數。

+0

我正在使用Amazon S3和Postgresql。我遵循這種說法實施CDN,https://devcenter.heroku.com/articles/cdn-asset-host-rails31。如果服務器的位置沒有太大幫助,我會將每個靜態頁面放在Heroku上。感謝您的信息。 – 2012-07-28 22:35:43

+0

考慮如果我確信你不要去(多)數據位置的(非常)困難的方式將答案標記爲接受:P – 2012-07-29 02:33:29