Назад | Перейти на главную страницу

Apache mod_proxy на другой сервер

Я использую proxy_balancer в Apache2 для прокси-запросов к приложению Rails на мой сервер rails на порту, на котором работает приложение. Вот как это устроено ...

Сервер Rails Mongrel, работающий на порту 8000, при доступе к URL-адресу напрямую http: // rails_server: 8000 сайт загружается нормально

Сервер Apache Conf-файл для сайта:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName myserver.com
    ServerAlias application.myserver.com

    <Proxy balancer://application_cluster>
            Allow from localhost
            BalancerMember http://ip.to.server:8000 retry=10
    </Proxy>

    ProxyPass / balancer://application_cluster
</VirtualHost>

Проблема, с которой я столкнулся, будет http: // rails_server: 8000 работает нормально, но собираюсь http://application.myserver.com Загружает правильный контент, но отображает весь HTML как текст, а не как html

Попробуйте добавить

ProxyPassReverse / balancer: // application_cluster

как сказал Иниго в своем комментарии. Чуть ниже ProxyPass.

(вау, только что понял, что я опоздал с этим постом более чем на год, это "вопрос без ответа", но я сомневаюсь, что автор когда-нибудь вернется)

Я бы проверил тип контента, возвращаемый указанными URL-адресами. Похоже, один передает «text / html», а другой «text / plain». . . возможно, в вашей конфигурации прокси вам нужно заморозить некоторые настройки типа контента.

-d