6

どこでも検索できますが、問題に対する正しい答えが見つからないようです。だからここに行きます。

私は2つのドメインを持っています....

http://www.mywebsite.com/および http://app.mywebsite.com/

これらの 2 つのドメインは、2 つの異なる Rails アプリにあります。

Devise は app.mywebsite.com にあります。app.website.com に接続する www.mywebsite.com にログイン/サインアップ フォームがあります。どうすればいいですか?

4

1 に答える 1

7

modelデバイスセッションを共有する必要があります

これを試して

を変更するだけですconfig/initializers/session_store.rb

Yourapp::Application.config.session_store :cookie_store, key: '_Yourapp_session', :domain => '.mywebsite.com'

それは私のアプリケーションで動作します。

アップデート

上記の私の回答では、1 つのアプリケーションでのみ試しましたが、スキーマは異なりましたが、うまくいきました。

gem devise を入れないと、devise モデルが動きません。:D

別のアプリケーションの場合はwww.mywebsite.com、のデータベースにアクセスする必要がありますmywebsite.com。または、アプリケーションに SSO を使用できます。

これが必要だと思います:

  1. Devise、Omniauth、シングル サインオンを使用した複数のアプリケーション
  2. sso-devise-omniauth-provider

いくつかの同様の質問:

  1. 異なるアプリケーションでのシングル ログオンが ruby​​ on rails にアプローチ
  2. Railsでdeviseのsign_in情報を別のアプリに渡す方法
  3. DeviseによるOmniAuthシングルサインオン
于 2013-05-10T05:55:13.300 に答える