Связывание приложений Rails 5 в подпути с использованием ресурсов из другого приложения - PullRequest
0 голосов
/ 17 декабря 2018

У меня есть два разных приложения Rails 5 на одном сервере с Nginx и Passenger.Один обслуживается в /subpath с блоком nginx location {} с scope 'subpath' do в rout.rb, а для config.assets.prefix и c onfig.relative_url_root установлено значение /subpath.

Я пытался обслуживать другое приложение на другом подпути, но у него есть некоторые Javascript и плагины, которые ожидают, что он будет на маршруте домена, поэтому оказалось, что это больше проблем, чем оно того стоило, так чтомаршрут домена.

В основном все работает, но когда приложения ссылаются друг на друга, происходит утечка CSS и JS из другого приложения.Если я обновлю страницу, она исправит себя.

Используя инспектор после ссылки из приложения в www.domain.com/subpath/foo на www.domain.com/bar, я вижу, что www.domain.com/bar использует некоторый код из www.domain.com/subpath/application.css (скомпилированная рабочая версия).Он работает одинаково в обоих направлениях.

Я предположил, что это какая-то проблема с кэшированием, поэтому я экспериментировал с изменением config.cache_classes и config.action_controller.perform_caching на false в обоих приложениях безрезультатно.(Одно приложение в корне домена обслуживает статические файлы, если это имеет значение)

Есть идеи, почему это происходит?

1 Ответ

0 голосов
/ 29 декабря 2018

Мне удалось решить проблему, отключив турболинки.Не уверен, что есть способ предотвратить возникновение турболинков, но это сработало для меня.

...