2017-10-08 13 views
0

私は研究し、人々がそれほど成功することなくこれをやっている方法を見つけようとしました。ユーザーベースのカスタムサブドメイン

私のレールプロジェクトでは、それぞれに独自のスラグを持つプロジェクトがあります。ユーザーは自分自身でスラッグを指示することができ、そのスラッグはサブドメインになります。

今、私はこのルーティングを賢明に行い、本番環境でも同様に動作させる方法を見つけようとしています。

私は今、この持っている:私はそれが動作lvh.meを使用して、ローカルホスト上でこれをテストする場合

before_action :get_project, only: :index 
... 
def get_project 
    unless @project ||= Project.find_by_slug(request.subdomain) 
    redirect_to root_url 
    end 
end 

:私は、コントローラレベルで

get '/', to: 'posts#index', constraints: { subdomain: /.+/, via: [:get] }, as: :feed 

を。しかし、私はRailsはこの戻り、ライブ本番サーバー上でこれを行うと、サーバーのログをチェックしようとすると:

ActionController::RoutingError (No route matches [OPTIONS] "/"): 

を誰もがこれでどんな経験を持っていますか?

答えて

0

現行のコードが本番環境で動作しないのは、おそらく2つの環境の主な違いであるため、デバッグを手助けする必要がある場合は、Webサーバーの設定を与える必要があります。特に、アプリがリバースプロキシの背後にある場合。しかし、gemを使ってこれを解決できるかもしれません。これを実装すると、いくつかのケースがカバーされ、達成しようとしているものが単純化され、プロダクションで作業する可能性があります。これは、実際には多くの時間を節約するいくつかの方法でサブドメインルートのマッピングを可能にします。あなたが本当に興味を持っているのは、アクティブなレコードのルートをマッピングすることについて語っているthis sectionです。

関連する問題