При вызове помощника _url в рельсах он будет возвращать хост + порт + путь так, напримерRails: удалить порт из _url помощника
photo_url
вернется
http://localhost:3000/photo
В моей среде у меня есть тонкий, обслуживающий приложение rails на данном порту, и apache, обслуживающий статический контент на другом порту. Когда сайт подключен без какого-либо порта, каждый сервер знает, какую часть обрабатывать, и все в порядке. Однако, если задан конкретный порт, только запрашиваемый сервер отправляет ответ (который ожидается).
У меня теперь возникают проблемы, потому что когда я аутентифицирую пользователя через oauth2 (facebook, twitter) или openid, мне нужно отправить URL-адрес обратного вызова. Используемый множитель (OmniAuth) использует помощник _url (насколько я могу судить) (callback_url) для вычисления URL-адреса обратного вызова. Это приводит к тому, что только тонкие ответы на дополнительные запросы из-за добавленного номера порта.
Есть ли способ сказать рельсы, что он не работает на каком-либо конкретном порту? Или что он не использует номер порта в помощнике _url?
Мне нужно было бы изменить драгоценный камень для этого, что не было бы хорошим решением. (Поведение жемчужины верное, это моя настройка странная) – Peter