Показать полную графическую версию : Настройка Модуля Апач
poisonkit
07-06-2019, 17:13
Добрый день.
Подскажите пожалуйста, как настроить обратный прокси на Апаче?
Где и что надо прописывать?
Я включил mod_proxy
LoadModule proxy_module modules/mod_proxy.so
А вот что и где дальше прописывать, я не нашел.
Необходимо прописать домен vh.gamernet.ru что он находится на другом сервере с адресом 192.168.0.201
poisonkit
07-06-2019, 23:56
Апач под Windows.
К сожалению везде описано по *nix
Пологая что как-то так:
<VirtualHost vh.gamernet.ru:*>
ProxyRequests On
</VirtualHost>
Это в конфиг апача вставлять, в самый конец...
Но тут не указан ip адрес. Как его вставить?
Все-же надеюсь, что есть знающие люди которые смогут помочь.
попробуйте так, что-ли
<VirtualHost *:*>
ServerName vh.gamernet.ru
ProxyPass "/" "http://192.168.0.201/"
ProxyPassReverse "/" "http://192.168.0.201/"
</VirtualHost>
мануал тут (http://httpd.apache.org/docs/2.4/mod/mod_proxy.html#forwardreverse)
poisonkit
09-06-2019, 01:31
попробуйте так, что-ли »
Спасибо за ссылку, я этот мануал читал, но так ничего и не понял.
Вставлял Ваш код:
<VirtualHost *:*>
ServerName vh.gamernet.ru
ProxyPass "/" "http://192.168.0.201/"
ProxyPassReverse "/" "http://192.168.0.201/"
</VirtualHost>
в конфиг Апача. Не помогает, видимо чего-то еще не хватает...
Судя по мануалу, надо использовать так-же Reverse Proxy и Forward Proxy.
Вот только как использовать, не получается...
А mod_proxy_http.so подгружается? С mod_proxy + mod_proxy_http должно работать. Плюс нужно учитывать другие хосты в конфиге. Если есть хост на конкретном порту, то будет выбран он. Тогда нужно обозначить конкретные порты <VirtualHost *:80 *:8080>.
poisonkit
10-06-2019, 10:57
А mod_proxy_http.so подгружается? С mod_proxy + mod_proxy_http должно работать. Плюс нужно учитывать другие хосты в конфиге. Если есть хост на конкретном порту, то будет выбран он. Тогда нужно обозначить конкретные порты <VirtualHost *:80 *:8080>. »
Вы оказались правы. mod_proxy_http не работал.
Итак, я раскоментировал mod_proxy_http и mod_proxy.
Часть кода Apache_2.4-PHP_7.2-7.3-x64_server.conf
LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_express_module modules/mod_proxy_express.so
#LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_html_module modules/mod_proxy_html.so
LoadModule proxy_http_module modules/mod_proxy_http.so
В самый конец добавил:
<VirtualHost *:80>
ServerName vh.gamernet.ru
ProxyPass "/" "http://192.168.0.201/"
ProxyPassReverse "/" "http://192.168.0.201/"
</VirtualHost>
Перезагрузил Апач, но результата не дало =(
Что-то видимо еще надо.
нужно знать, какой хост выбирается при запросе на домен, и ответ бэкенда, если выбран правильный хост. LogLevel (http://httpd.apache.org/docs/2.4/mod/core.html#loglevel) c info+. Может бэкенду нужен "ProxyPreserveHost On".
poisonkit
11-06-2019, 09:58
нужно знать, какой хост выбирается при запросе на домен, и ответ бэкенда, если выбран правильный хост. LogLevel c info+. Может бэкенду нужен "ProxyPreserveHost On". »
Я пробовал так:
<VirtualHost *:80>
ProxyPreserveHost On
ProxyPass / http://192.168.0.201:80/
ProxyPassReverse / http://192.168.0.201:80/
ServerName vh.gamernet.ru
</VirtualHost>
Тогда выдает ошибку 502
https://s8.hostingkartinok.com/uploads/images/2019/06/2a360c49004ab19acf674c30e9e74789.png
poisonkit
11-06-2019, 11:05
Sham, Заработало... хух.... Спасибо большое...
Про FTP тоже самое настраивать? Только вместо 80 порта, 21 ставить в VirtualHost?
<VirtualHost *:21>
Он не может ftp-proxy, только http<->ftp (сервер отдаёт html листинг папки). Другой софт нужен.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.