mod_proxy_html не настроен должным образом

У меня есть веб-сервер apache2, который обрабатывает обратный прокси-сервер для приложения Rails3, запущенного на другом компьютере.

Установка работает, за исключением того, что URL, сгенерированные в веб-приложении, не переписываются моей конфигурацией для mod_proxy_html.

"Сценарий обратного прокси-сервера" - это именно то, что я пытаюсь сделать, поэтому я следовал этому уроку настолько полно, насколько знаю.

Я применил или попробовал два ответа, представленные здесь и здесь на stackru, безрезультатно.

Согласно "Сценарию обратного прокси-сервера" вы хотите загрузить несколько модулей. Все эти инструкции находятся в моем файле httpd.conf, и когда я проверяю вывод

apactectl -t -D DUMP_MODULES

все ожидаемые модули отображаются в списке.

Мой внешний веб-сервер, который выполняет обратный прокси-сервер, находится по адресу www.ourdomain.org, а приложение Rails доступно внутри apphost.local (сервер Mac OS X Server 10.6, сервер приложений rails - Mac OS X 10.6).

Сейчас работает доступ к веб-приложению через обратный прокси-сервер:

http://www.ourdomain.org/apphost/railsappname/controllername/action

Но ни один из javascript-файлов, css-файлов или других ресурсов не загружается, а внутренние ссылки на веб-приложение выходят без части apphost URL, как будто мое правило перезаписи настроено неправильно (поэтому, конечно, я сосредоточился на этом и, кажется, не может получить что-либо, что будет добавлено или удалено в процессе передачи html из apphost и через сервер Apache).

Вот как выглядят мои директивы Apache:

LoadModule proxy_html_module /usr/libexec/apache2/mod_proxy_html.so
LoadModule xml2enc_module /usr/libexec/apache2/mod_xml2enc.so
    ProxyHTMLLogVerbose On
    LogLevel Debug
    ProxyPass /apphost/  http://apphost.local/
    <Location /apphost/>
            SetOutputFilter INFLATE;proxy-html;DEFLATE
            ProxyPassReverse /
            ProxyHTMLExtended On
            ProxyHTMLURLMap railsappname/ apphost/railsappname/
            RequestHeader unset Accept-Encoding
    </Location>

После каждого изменения, которое я делаю в httpd.conf, я тщательно проверяю apachectl -t, чтобы быть в здравом уме.

Я определенно не эксперт Apache, но все директивы, которые следуют моим, похоже, не отменяют того, что я здесь делаю. Но тогда ничто из того, что я пытаюсь сделать, похоже, не меняет URL-адреса, которые я вижу в своем браузере после обращения к серверу Apache с запросом на мое веб-приложение.

Даже если вы не можете сказать, что я сделал неправильно, я бы приветствовал идеи о том, как настроить Apache, чтобы увидеть, над чем он работает и что делает с html из моего веб-приложения. Это то, что я понял, что ProxyHTMLLogVerbose On и LogLevel Debug настраиваются, но я ничего не вижу в файлах журнала.

0 ответов

Другие вопросы по тегам