Перенаправление https://server.com на https://www.server.com в apache - PullRequest
4 голосов
/ 21 февраля 2012

Я пытаюсь написать редирект в apache для URL шаблона:

https://server.com на https://www.server.com

без особого успеха

Причинаrediect : мой сертификат SSL установлен на www.server.com, поэтому я хочу, чтобы пользователи заходили на правильный сайт (и видели значок безопасности).

Проблема : Проблема в том, чтокогда я пытаюсь открыть https://server.com, браузер выдает мне неверную ошибку сертификата, и ни один из моих RewriteRule не выполняется, пока я не проигнорирую проблему некорректного сертификата.

Как мне перенаправить в этом случае?

1 Ответ

8 голосов
/ 21 февраля 2012

Вы не можете сделать это с одним сертификатом.Причина в том, что веб-серверу необходимо выполнить рукопожатие ssl, прежде чем он выполнит перенаправление, поэтому у вас всегда будет проблема с недействительным сертификатом.

У вас действительно есть только один вариант сделать это - покрыть оба,www и нет www с сертификатом и редиректом.Это можно сделать несколькими способами: либо получить сертификат с несколькими доменными именами, называемый сертификатом SAN, либо получить два сертификата, один для www и один без.Однако во втором случае вам понадобятся два веб-сервера с разными IP-адресами для выполнения вашей задачи.

Альтернативный подход, использующий меня сам, - не беспокоиться об этом.Попросите пользователей перейти на обычный веб-сайт http и выполнить перенаправление самостоятельно, когда требуется SSL Cconnection.Это то, что на самом деле делает amazon.com.Они хотят, чтобы вы просматривали http, и перенаправляют вас на SSL, только когда вы что-то покупаете.Их сертификат также действителен только для www, просто перейдите на https://amazon.com, и вы увидите, что их сертификат недействителен без www

...