簡體   English   中英

Rails i18n如果我使用unicorn和nginx作為應用程序服務器不起作用

[英]Rails i18n if I use unicorn and nginx as a application server doesnt work


當我使用默認的WEBrick服務器運行我的應用程序,並從子域設置區域設置時,i18n完美地適用於“ en”和“ ja”。
但是,當我使用Nginx和Unicorn運行我的應用程序時,i18n無法像在WEBrick中那樣工作。

我寫下面的代碼來設置子域的語言環境;

 def set_locale                                          
    I18n.locale = params[:locale] || I18n.default_locale  
     if request.host.starts_with? "en."                    
      I18n.locale = "en"                                  
     else                                                  
      I18n.locale = "ja"                                  
     end                                                   
 end


我在這里想念什么?
除了我將應用程序名稱或proxy_pass更改為nginx.conf中的應用程序外,我對unicorn和nginx的設置幾乎是默認設置。
有人可以教我如何使i18n正常工作嗎?
請原諒我英語水平差...
先感謝您。

嘗試將以下行添加到您的Nginx配置中location @app-name { }proxy_pass配置之上:

proxy_set_header Host $http_host;

如果您的Nginx配置中缺少Rails,它將作為主機發送給proxy_pass設置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM