Webサーバ(Apache 2.4系)のHTTPアクセスをHTTPSにリダイレクトさせる設定
Apache 2.4 で構築したWebサーバで、Webページを公開しており、そこにhttpアクセスがあった際に httpsへリダイレクトさせる設定を行います。常時SSL化が最近のデフォルトなので、httpアクセスをさせる意味もないですしね。
前提条件
Amazon EC2(Linux)で構築したWebサーバ(Apache)のSSL設定の設定まで完了している、もしくは同様の状態であること。
要するにSSLサイト化されていることが前提となります。
実際にやってみた
/etc/httpd/conf/httpd.conf に以下を追記するだけ
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
おまけ
IPアドレスを直アクセスも拒否したい場合は以下の設定を行います。
/etc/httpd/conf.d/ssl.conf に以下を追記
<VirtualHost *:443>
ServerName any
<Location />
Order deny,allow
Deny from all
</Location>
続いて59行目、60行目付近の以下の行の先頭#を消して、修正
DocumentRoot "/var/www/html"
ServerName "サーバ名"
参考にしたページ
ApacheでIP直打ちのHTTPSアクセスを拒否したい
Apacheのリダイレクト(転送)設定、httpからhttpsとか