SSL証明書をインストールしたウェブサイトでHTTPからHTTPSへのリダイレクトを実現するには?
SSL証明書のデプロイが完了したら、サーバーに301強制リダイレクトルールを設定し、サイト全体のHTTPS暗号化アクセスを実現する必要があります。各サーバーでの具体的な操作方法は以下の通りです:
設定後はブラウザのキャッシュをクリアしてテストしてください。Racent SSL検証ツールでリダイレクト状態を確認することを推奨します
Nginx
HTTPリクエストを自動的に HTTPS にリダイレクトしたい場合は、以下の手順で設定できます:
-
Nginxのリダイレクト機能を使用し、HTTPの
serverにreturn 301 https://$host$request_uri;を追加すると、HTTPへのリクエストをHTTPSにリダイレクトできます。以下の内容を修正してください:server {
listen 80;
#httpのドメインへのリクエストをhttpsに転送
return 301 https://$host$request_uri;
} -
Nginxサーバーを再起動すると、ドメインでのアクセスが可能になり、
HTTPからHTTPSへの自動リダイレクトが実現します。
SSL証明書の完全なインストール手順については、NginxサーバーへのsslTrus SSL証明書インストールチュートリアルをご参照ください。
Tomcat
HTTPリクエストをHTTPSに自動的にリダイレクトしたい場合は、以下の手順で設定できます:
-
/usr/tomcat9.0.13/confディレクトリ配下のweb.xmlファイルを編集し、</welcome-file-list>タグを見つけます。 -
終了タグ
</welcome-file-list>の後で改行し、以下の内容を追加してください。<login-config>
<!-- Authorization setting for SSL -->
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
<!-- Authorization setting for SSL -->
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint> -
/usr/tomcat9.0.13/confディレクトリ配下のserver.xmlファイルを編集し、redirectPortパラメータをSSLのconnectorポート、つまり443番ポートに変更します。以下に例を示します:<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" /> -
設定ファイルを保存し、
binディレクトリで以下のコマンドを実行して、設定が正しいかどうかを確認します。./configtest.sh -
設定に問題がなければ、Tomcatサーバーを再起動するとドメイン名でアクセスできるようになり、HTTPからHTTPSへの自動リダイレクトが実現されます。
./shutdown.sh #Tomcatサーバーを停止する
./startup.sh #Tomcatサーバーを起動する
SSL証明書の完全なインストール手順については、TomcatサーバーへのsslTrus SSL証明書インストールチュートリアル を参照してください。
IIS
-
IISサービスマネージャーを開きます。
-
「Webサイト」配下の対象サイト名を選択し、ダブルクリックして「URL書き換え」を開きます。以下の図のとおりです:
注意この手順を実行する前に、URL Rewriteモジュール をダウンロードしてインストールしてください。

-
「URL書き換え」ページに入り、右側の「操作」欄にある ルールの追加 をクリックします。以下の図のとおりです:

-
表示された「ルールの追加」ウィンドウで、空のルール を選択し、OK をクリックします。以下の画像の通りです:

-
「受信ルールの編集」ページに進みます。以下の画像の通りです:

- 名前:Http redirect to https と入力します。
- URLとの一致:「パターン」に手動で
(.*)を入力します。 - 条件:
- 追加をクリックし、「条件の追加」ウィンドウを表示します。
- 条件の入力:
{HTTPS}。 - 入力文字列の確認方法:デフォルトで「パターンと一致する」を選択します。
- パターン:手動で
^OFF$を入力します。
- 操作:以下のパラメータを入力します。
- 操作の種類:リダイレクトを選択します。
- リダイレクトURL:
https://{HTTP_HOST}/{R:1}。 - リダイレクトの種類:301リダイレクト。
-
右側の「操作」欄にある 適用 をクリックして保存します。
-
Webサイトのトップページに戻り、右側の「Webサイトの管理」欄にある 再起動 をクリックします。これでHTTPSでアクセスできるようになります。
SSL証明書の完全なインストール手順については、IISサーバーへのsslTrus SSL証明書インストールチュートリアル をご確認ください。
Apache
HTTPリクエストをHTTPSに自動的にリダイレクトする必要がある場合は、以下の手順で設定できます:
-
/etc/httpd/confディレクトリ配下にあるhttpd.conf設定ファイルを編集します。当該設定ファイル内にLoadModule rewrite_module modules/mod_rewrite.soが存在するか確認してください。 存在する場合は、先頭行のコメント記号(#)を削除してください。存在しない場合は、LoadModule rewrite_module modules/mod_rewrite.soの行を追加してから、設定ファイルを保存してください。 -
http.confファイルを開き、設定ファイルに以下の内容を追加します:
<VirtualHost *:80>
# 新增
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</VirtualHost> -
Apacheサーバーを再起動すると、ドメインでアクセスできるようになり、HTTPからHTTPSへの自動リダイレクトが実現されます。
SSL証明書の完全なインストール手順については、ApacheサーバーへのsslTrus SSL証明書インストールチュートリアル を参照してください。
Apache2
HTTPリクエストをHTTPSに自動的にリダイレクトしたい場合は、以下の手順で設定できます:
-
コマンドラインで
a2enmod rewriteを入力し、リダイレクトモジュールを有効化します。 -
次に、http設定ファイルを開きます。例:
/etc/apache2/sites-available/000-default.confを開き、設定ファイルに以下の内容を追加します:<VirtualHost *:80>
# 新增
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</VirtualHost> -
Apacheサーバーを再起動すると、ドメインでアクセスできるようになり、HTTPからHTTPSへの自動リダイレクトが実現されます。
SSL証明書の完全なインストール手順については、Apache2サーバーへのsslTrus SSL証明書インストールチュートリアル を参照してください。