Обратный прокси-сервер Apache SSL для нескольких серверов
Я видел разные ароматы этого, но ничего, что явно не соответствует тому, что мне нужно сделать. У меня есть сервер Apache с установленным сертификатом подстановочного знака. Теперь я хочу, чтобы Apache сделал две вещи:
1) Прослушивать запросы по http и постоянно запрашивать https для каждого сайта. 2) Прокси, который запрашивает https для внутренних серверов, которые прослушивают только порт 80.
Я уверен, что у меня будет несколько записей виртуальных хостов, и давайте предположим, что CNames - это www.mydomain.com, test.mydomain.com, staging.mydomain.com. Все они указывают на один и тот же IP, который является моим сервером Apache.
Поэтому, когда приходит запрос на http://www.mydomain.com
это должно быть перенаправлено на https://www.mydomain.com
и затем прокси на внутренний сервер в 192.168.20.200. Запрос на http://test.mydomain.com
следует перенаправить на https://test.mydomain.com
и проксировал обратно к 192.168.20.201... и так далее.
Насколько я могу судить, виртуальные хосты для www.mydomain.com должны выглядеть примерно так:
NameVirtualHost *: 80
<VirtualHost *:80>
ServerName www.mydomain.com
Redirect permanent / `https://www.mydomain.com/`
</VirtualHost>
<VirtualHost *:443>
ServerName www.mydomain.com
ProxyPass / `http://192.168.20.200/`
ProxyPassReverse / `http://192.168.20.200/`
</VirtualHost>
Я не уверен, является ли это правильным подходом (я видел несколько примеров, использующих переписывание), и я не уверен, что мне нужны ДВЕ записи виртуального хоста на домен.
Может кто-нибудь проверить, что это правильный подход? Этот Apache будет обратным прокси для нескольких хостов в этом домене.
1 ответ
У вас есть правильная настройка для того, что вы пытаетесь сделать.
Эти наклонные черточки вокруг URL могут быть удалены.