2013-05-10 31 views
5

Tôi đã tìm kiếm ở khắp mọi nơi nhưng tôi dường như không thể tìm ra câu trả lời đúng cho vấn đề của mình. Vì vậy, ở đây đi.Rails Devise: Đăng nhập từ một tên miền khác

tôi có 2 lĩnh vực ....

http://www.mywebsite.com/http://app.mywebsite.com/

Những hai lĩnh vực là trong hai đường ray ứng dụng khác nhau.

Phát triển nằm trong app.mywebsite.com. Tôi có một mẫu đăng nhập/đăng ký trong www.mywebsite.com sẽ kết nối với app.website.com. Làm thế nào để tôi làm điều này?

Trả lời

5

Bạn cần chia sẻ phiên model devise

Hãy thử điều này

Chỉ việc điều chỉnh config/initializers/session_store.rb

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

Nó hoạt động trên các ứng dụng của tôi.

CẬP NHẬT

Đối với câu trả lời ở trên, tôi chỉ thử trong một ứng dụng nhưng lược đồ khác và hoạt động.

Mô hình phát triển không hoạt động nếu bạn không đặt gem tạo ra. : D

Nếu ứng dụng khác, bạn cần www.mywebsite.com truy cập vào cơ sở dữ liệu của mywebsite.com Hoặc bạn có thể sử dụng SSO cho các ứng dụng của mình.

Tôi nghĩ rằng bạn cần điều này:

  1. Multiple Applications with Devise, Omniauth and Single Sign On
  2. sso-devise-omniauth-provider

Một số câu hỏi tương tự:

  1. Single logon with different applications approach ruby on rails
  2. How to pass devise sign_in information into different application with rails
  3. OmniAuth Single Sign On with Devise
+0

Tôi cũng nên đặt ra trong 'www.mywebsite.com'? – Eralph

+0

'www.mywebsites.com' là tên miền phụ của' mywebsites.com', vì vậy bạn chỉ cần đặt '.mywebsites.com', vì nó đã bao gồm tất cả các tên miền phụ. –

+0

Ý của tôi là gì, tôi cũng nên inlcude tạo ra đá quý trong ứng dụng 'www.mywebsite.com' của tôi? – Eralph

Các vấn đề liên quan