0

現在、ユーザーが www URL にアクセスすると、「この Web サイトの証明書が無効です」という SSL エラーが発生します。これは、非 WWW URL: mysite.co 用に構成された証明書が 1 つしかないためです。

どちらかのリクエストを希望します

http://www.mysite.co   
https://www.mysite.co

に行く

https://mysite.co

私たちの動機は、www または www なしの cert を 1 つだけ支払うことでコストを最小限に抑えることであるため、逆も許容されます。別の投稿を読みましたが、SSL ネゴシエーションはサーバーからの応答 (この場合はリダイレクト) の前に行われるため、一般名にないドメインを使用すると訪問者に警告が表示されます。ただし、DNS を変更して CNAME を含め、すべての www.mysite.co トラフィックが mysite.co にリダイレクトされ、Firefox と Safari で引き続きエラーが表示されるようにしました。

次のmod_rewriteで Ubuntu を使用します。

1) /etc/apache2/sites-available/mysite-ssl 内

<VirtualHost *:443>
        RewriteEngine on
        RewriteCond %{HTTP_HOST} www.mysite.com  [NC]
        RewriteRule ^(.*)$ https://mysite.com/$1 [R=permanent,L,NC]
        ServerAdmin admin@mysite
        ServerName mysite
        ServerAlias www.mysite

        ... other stuff ... 

</VirtualHost>

2) /etc/apache2/sites-available/mysite 内

<VirtualHost *:80>
        RewriteEngine on
        ReWriteCond %{SERVER_PORT} !^443$
        RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
</VirtualHost>

興味深いことに、Chrome は WWW.mysite.co (http と https の両方) にアクセスするとすべて問題ないと表示します。

ただし、Firefox と Safari の両方がホスト名の不一致を訴えます (身元を確認できません)

4

1 に答える 1

0

したがって、さらに読んで調査した後、上記のルールはトラフィックを www.site.co から site.co にリダイレクトするために機能します

ただし、2 つ以上の URL を 1 つの SSL 証明書で保護する唯一の方法は、次のいずれかを購入することです。

  1. *.site.co をカバーするワイルドカード SSL 証明書.. これらは購入時に定義する必要はありません

  2. www.site.co .. mail.site.co .. などをカバーする 1 つ以上のサブジェクト代替名 (SAN)を持つ SSL 証明書。これらは、証明書を購入するときに、各 SAN を指定して定義する必要があります。

于 2013-07-14T02:46:41.143 に答える