경보를 발생시키지 않고 SSL 재 지정


10

클라이언트에는 site.com이 아닌 www.site.com 버전의 도메인에 대해서만 SSL 인증서가 있습니다.

일반 HTTP 로의 리디렉션은 mod_rewrite를 통한 문제가 아니 었습니다.

그러나이 방법은 HTTPS에서 실패한 것 같습니다.

https://site.com 요청을 https://www.site.com 으로 리디렉션하려고합니다 .

브라우저에서 유효하지 않은 인증서 경고를 발생 시키거나 와일드 카드 인증서를받지 않고도이 작업을 수행 할 수 있습니까?

답변:


10

아니요, 그런 식으로 작동하지 않습니다.

SSL 트랜잭션은 HTTP가 전송되기 전에 발생하므로 리디렉션이 발생하기 전에 SSL 경고가 나타납니다.

실제로, site.com과 * .site.com이 같지 않기 때문에 와일드 카드도 작동하지 않는다고 생각합니다. 인증서에서 주체 대체 이름 을 고려할 수 있습니다 .


나는 이것이 사실 인 것을 두려워했다. 확인해 주셔서 감사합니다.
djdy

1
이 답변은 잘못되었습니다. 참조 serverfault.com/a/367843/113375을
Sonassi - 벤 Lessani

@ BenLessani-Sonassi 링크 된 답변은 브라우저에서 원본 사이트의 인증서를 인식하지 못하는 경우 리디렉션이 발생하는 방법을 다루지 않습니다.
Michael

내가 만들고자하는 요점은 거의 모든 CA가 www 하위 도메인 변형으로 구매할 때 apex 도메인과 www 하위 도메인을 모두 포함하는 인증서를 제공한다는 것입니다.
Ben Lessani-Sonassi

0

아래에서 구매시 RapidSSL의 기본 인증서

www.mydomain.com 

또한 커버

domain.com

와일드 카드는 아니지만 TLD 및 www 하위 도메인을 다룹니다.

예, SSL 오류 없이 하위 도메인에서 다른 도메인으로 리디렉션 할 수 있습니다 . 많은 사이트에서이를 사용합니다. 한 가지 예는 다음과 같습니다.

https://sms-sagat.theclientarea.info 로 리디렉션되는 https://www.theclientarea.info

오류가 없습니다.

간단한 .htaccess 재 작성이이를 처리합니다.

RewriteEngine On
RewriteCond %{ENV:HTTPS} !On [NC]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

HTTPS 하위 도메인 간의 모든 유형의 이동은 POST / GET / .htaccess 리디렉션 등 오류나 프롬프트없이 작동합니다.

문제가되는 유일한 시점은 HTTPS에서 HTTP로 리디렉션하는 경우입니다. 그러면 프롬프트가 표시됩니다.


인증서에서 주체 대체 이름을 사용하고 있습니다. OP에는 새로운 인증서가 필요합니다.
cjc

아니요, 별도의 인증서 2 개를 사용하고 있습니다. 그러나 시장에서 가장 저렴한 SSL 인증서가 필요한 것을 수행한다고 말하고 있습니다 (www 하위 도메인이 있거나없는 TLD 지원).
Ben Lessani-Sonassi
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.