Мод настройка прокси-сервера на HTTP-сервере Apache



Я хотел отменить прокси-сервер веб-службы с моего сервера tomcat с помощью веб-сервера apache. Я внес изменения в файл httpd.conf



LoadModule proxy_module modules/mod_proxy.so

<Directory />
AllowOverride none
Require all denied
</Directory>

ProxyPass /ROOT http://localhost:8080/ROOT
ProxyPassReverse /ROOT http://localhost:8080/ROOT


мой сервер Tomcat работает на порту 8080, теперь, когда я запускаю localhost / ROOT, я получаю ошибку 500 внутренняя ошибка сервера.



Это последняя запись в error_log - это:



[Thu Jul 04 14:17:00.097359 2013] [proxy:warn] [pid 18980:tid 4476780544] [client 127.0.0.1:50525] AH01144: No protocol handler was valid for the URL /ROOT. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.

Последняя запись в access_log is:

127.0.0.1 - - [04/Jul/2013:14:17:00 -0400] "GET /ROOT HTTP/1.1" 500 528


есть идеи о том, что я делаю неправильно здесь?

609   3  

3 ответов:

Так что это заняло некоторое время, но я понял, как это сделать. Есть еще один модуль, который нужно загрузить. Вот что такое httpd.conf, который выглядит как

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

<Directory />
    AllowOverride none
    Require all denied
</Directory>

ProxyPass         /ROOT  http://localhost:8080/ROOT
ProxyPassReverse  /ROOT  http://localhost:8080/ROOT

это работает точно. :)

Так это легко упустить из виду, обратите внимание на комментарий @мука это:

sudo a2enmod proxy  
sudo a2enmod proxy_http  
sudo service apache2 restart

обязательно включите оба модуля proxy и proxy_http!

в дополнение к другим прекрасным ответам, Если вы проксируете конечную точку https, вам нужно включить mod_ssl и добавить SSLProxyEngine on к вашему vhost

Comments

    Ничего не найдено.