В настоящее время я использую apache2 на своем сервере, но хотел бы перенаправить трафик http (s), запрашивающий конкретный хост (например, lxc.example.com), в контейнер LXC, к которому можно получить доступ с локального IP-адреса на коробке.
Я изучил iptables, однако, насколько я понимаю, iptables не обрабатывает трафик http (s), поэтому, насколько я могу судить, нет правил пересылки, основанных на имени хоста, которое я могу применить.
Я бы предпочел не перенаправлять трафик на определенный порт (например, lxc.example.com:8080), поскольку это делает URL-адрес непрофессиональным и требует дополнительной настройки переадресации портов.
Кажется, что, вероятно, есть очевидное решение, которое мне не хватает, но мои поиски еще ничего не показали. Любая помощь будет оценена.
Обратный прокси - это решение.
Определите виртуальный хост для домена контейнера, который будет обратным прокси-трафиком. Это перенаправит весь трафик с lxc.example.com на localip. Дайте мне знать, если вы этого не хотите.
<VirtualHost>
ServerName lxc.example.com
ProxyPass "/" "http://localip/"
ProxyPassReverse "/" "http://localip/"
</VirtualHost>
Отказ от ответственности: Конфигурация не проверена.
Не забудьте перезапустить службу apache2.