1

私はウェブサイトをセットアップしました:

https://foo.com

次の URL からのトラフィックがある場合は、それを希望します。

http://foo.com
http://www.foo.com
https://www.foo.com

そこに自動的にリダイレクトされます。つまり、誰かがブラウザーで下の 3 つの URL のいずれかを入力した場合、表示される URL をすぐに変更して、サーバーhttps://foo.com上で HTTPS 要求を受信したいと考えています。https://foo.comhttps://foo.com

これを達成するための最良の方法はどれですか?私はアパッチを使用しています。

また、SSL 証明書はfoo.comnotに対して署名されていますが、証明書の警告を発行せずwww.foo.comにリダイレクトを達成することは可能ですか? https://www.foo.comまたは、 の 2 つ目の証明書を取得する必要がありwww.foo.comますか?

4

2 に答える 2

1

SSL 以外のすべてのサイトでは、vhost ファイルまたは .htaccess ファイルの書き換えを使用して問題なくリダイレ​​クトできます (foo.com のサーバー エイリアスが *.foo.com であると仮定します)。

スペルミスのある ssl URL ごとに証明書が必要です。そうしないと、接続しようとすると証明書エラーが発生します。それが完了したら、それらをリダイレクトできます。

サーバー エイリアスが設定され、mod_rewrite が有効になっていると仮定すると、必要な書き換えルールは次のとおりです。

RewriteRule (.*) https://foo.com/$1 [R=301,L]
于 2012-08-15T19:30:05.923 に答える
0

テストされていませんが、試してみる価値があり
ますこれをhttpd.confに追加してください

<VirtualHost *:80>
        ServerName foo.com
        ServerAlias www.foo.com
        DocumentRoot /var/www/foo
</VirtualHost>

<VirtualHost *:443>
        ServerName foo.com
        DocumentRoot /var/www/foo
        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/certificate.crt
        SSLCertificateKeyFile /etc/ssl/certs/app_foo_com.key
        SSLCertificateChainFile /etc/ssl/certs/foo.ca.crt
        ErrorLog /var/log/ssl_engine.log
</VirtualHost>
于 2012-08-15T19:31:55.750 に答える