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

Сертификат виртуального хоста назначения Apache при использовании mod_rewrite или ProxyPass

Я пытаюсь использовать mod_rewrite или ProxyPass для перенаправления (PT) клиентского запроса с виртуального хоста A на 443 на другой виртуальный хост B на порт 4434, также с SSL. Как это:

SSLProxyEngine on
SSLProxyVerify none 
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off 
ProxyPassMatch    ^/vd https://localhost:4434

Вот как я пытаюсь использовать mod_rewrite:

RewriteEngine on
RewriteRule (.*) https://%{HTTP_HOST}:4434%{REQUEST_URI} [PT]

Проблема в том, что мой клиент проверяет сертификат сервера, и в ответ клиент получает сертификат виртуального хоста A на порту 443 вместо виртуального хоста B на порту 4434, поэтому квитирование SSL не удалось.

Есть ли способ обойти эту проблему? Спасибо

Короткий ответ: нет

Длинный ответ: клиент будет аутентифицироваться с помощью сертификата виртуального хоста A, потому что именно к нему он подключается. Все, что происходит на сервере в режиме прокси, прозрачно. Если вы хотите использовать сертификат Bs виртуального хоста, выполните перенаправление, а затем клиент подключается напрямую к этому хосту, однако он должен быть открыт для всех.