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

Перенаправить субдомен на сервере Ubuntu 14.04 на внутренний IP-адрес сервера Windows

Я хочу отправлять трафик, направленный на remote.mydomain.com, на сервер Windows с внутренним IP-адресом. Внешний трафик попадает на наш общедоступный IP-адрес и направляется на наш сервер ubuntu 14.04, где также находится наш веб-сайт.

В настоящее время мы используем vhost proxypass для перенаправления трафика на сервер Windows:

<VirtualHost *:80>
    ServerName remote.mydomain.com
    ProxyPass / http://172.18.1.8:80/
    ProxyPassReverse / http://172.18.1.8:80/
</VirtualHost>

Но проблема в том, что браузер показывает внутренний IP-адрес следующим образом:

http://172.18.1.8/Remote/.....

Мне также нужно настроить ssl в окне Windows.

Любой вклад будет оценен.

Решение:

добавьте ProxyPreserveHost On в файл vhost .conf

и

ProxyPreserveHost On
ProxyPass /remote http://172.18.1.8:80/
ProxyPassReverse /remote http://172.18.1.8:80/

в vhost .conf самого домена, и теперь он работает.

Вы можете добавить опцию ProxyPreserveHost On в файле конфигурации вашего виртуального хоста vhos.conf, что должно решить вашу проблему. Ваша конфигурация должна выглядеть так.

ProxyPreserveHost On
ProxyPass /remote http://172.18.1.8:80/
ProxyPassReverse /remote http://172.18.1.8:80/

Когда этот параметр включен, этот параметр будет передавать строку Host: из входящего запроса на проксируемый хост вместо имени хоста, указанного в строке ProxyPass module = "mod_proxy".

Как указано в документации Apache здесь: http://httpd.apache.org/docs/2.2/mod/mod_proxy.html