0

У меня есть два отдельных приложения, работающих на www.a.com и www.b.com. Второй - приложение для рельсов-3. Чтобы получить общий логин, работающий между ними, путем совместного использования файлов cookie, я перенаправляю все запросы на www.a.com/b на www.b.com. Я использую Apache обратного прокси-сервер для достижения этой цели:Как получить приложение Rails, работающее в двух доменах, Обратный прокси

ProxyPass /b/ http://www.b.com/ 

Это прекрасно работает, кроме того факта, что все активы/JavaScript ссылки становится образованными при условии www.a.com быть корнем. Например:

<%= javascript_include_tag 'js/bootstrap-datepicker'%> 

является результатом в ссылке http://a.com/assets/js/bootstrap-datepicker.js, тогда как я хочу, чтобы это было http://a.com/b/assets/js/bootstrap-datepicker.js

Я решить это, выполнив:

config.action_controller.asset_host = "http://a.com/analytics" 

Это прекрасно работает, даже если я нахожу решение быть немного взломанным. Настоящая проблема возникает, когда я помещаю ссылки на другие страницы в своем приложении. Поэтому, чтобы поместить ссылку на страницу с именем page, мне нужно поставить b/page в мой href. Это отлично работает, когда я обращаюсь к приложению с помощью a.com. Но это не позволяет мне получить доступ к приложению с помощью b.com, поскольку ссылка начинается с www.b.com/b/page, которая, очевидно, не существует.

Как я могу заставить все это работать, чтобы получить доступ к моему приложению, используя либо a.com, либо b.com.

ответ

0

Альтернативное решение вашей проблемы, используйте поддомен и CNAME/ALIAS вместо обратного прокси.

Вместо обратного проксирования a.com/b на b.com. Вы указываете new.a.com приложение, работающее на b.com, используя CNAME/ALIAS в DNS.

Установите домен cookie как a.com вместо www.a.com, чтобы файлы cookie делились между субдоменами.

конфигурации/Инициализаторы/session_store.rb

YouApplicationName::Application.config.session_store :cookie_store, key: 'some_key', :domain => ".a.com" 

 Смежные вопросы

  • Нет связанных вопросов^_^