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

Нужен ли мне сертификат SSL, если весь трафик перенаправляется в другой защищенный домен?

В настоящее время я использую CNAME, чтобы незаметно направлять весь трафик для http://cdn.domain.com в мой домен Rackspace Cloud Files по адресу http://cxxx.rxx.cxx.rackcdn.com.

Теперь я также хочу незаметно направлять весь HTTPS-трафик для https://cdn.domain.com к https://cxxx.ssl.cxx.rackcdn.com.

Я предполагаю, что я не могу сделать это с помощью CNAME (если могу, чертовски отлично!), Поэтому я буду использовать VirtualHosts как таковой:

<VirtualHost *:80>
    ServerName cdn.domain.com
    RewriteEngine On
    RewriteRule ^(.*)$ http://cxxx.rxx.cxx.rackcdn.com [L,R=301]
</VirtualHost>

<VirtualHost *:443>
    ServerName cdn.domain.com
    RewriteEngine On
    RewriteRule ^(.*)$ https://cxxx.ssl.cxx.rackcdn.com [L,R=301]
</VirtualHost>

Нужен ли мне SSL-сертификат для второго виртуального хоста, или он будет «позаимствовать» его у HTTPS-домена Rackspace?

Вам понадобится сертификат для cdn.domain.com.

Вы не можете использовать CNAME, потому что когда браузер получает сертификат для cxxx.ssl.cxx.rackcdn.com вместо того cdn.domain.com, это вызовет ошибку, потому что сертификат не соответствует указанному вами URL. И при выполнении перенаправления в apache перенаправление происходит после того, как сеанс SSL установлен (и сертификат необходим для установления этого сеанса SSL ).


Другим решением было бы указать альтернативное имя в сертификате для cxxx.ssl.cxx.rackcdn.com. В основном сертификат будет содержать оба cxxx.ssl.cxx.rackcdn.com и cdn.domain.com. Затем вы можете использовать CNAME, поскольку один и тот же сертификат действителен для обоих имен хостов (URL-адресов).

Вам понадобится один для вашего субдомена, так как все, что этот субдомен делает, это перенаправляет посетителей.

Я почти уверен, что вы не можете сделать это с CNAME.

Другой способ сделать это - перенаправить данные из HTTP-соединения в HTTPS-соединение Rackcdn следующим образом:

<VirtualHost *:80>
    ServerName cdn.domain.com
    RewriteEngine On
    RewriteRule ^(.*)$ https://cxxx.rxx.cxx.rackcdn.com [L,R=301]
</VirtualHost>