Обратный прокси-сервер 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 могут быть удалены.

Другие вопросы по тегам