.htaccessを使用してウェブサイトをHTTPSに強制する方法
あなたのサイトが共有インフラストラクチャ、仮想マシン、または専用サーバーで運営されているかどうかにかかわらず、SSL証明書をインストールすることでHTTPとHTTPSの両方のアクセスが可能になります。HTTPSのみがサーバーと訪問者の間で交換されるデータを暗号化します。完全なセキュリティとSEO準拠を確保するために、.htaccessを使用してサイト全体でHTTPSを強制する必要があります。
前提条件
進む前に、次のことを確認してください:
- あなたのドメインがホスティングに正しく接続されている
- SSL証明書がすでにインストールされており、機能している
これをテストするには、https://yourdomain.comを開いてください。ブラウザに安全なロックアイコンが表示されていれば、準備完了です。
.htaccessを介してHTTPをHTTPSにリダイレクト
サイトのルートフォルダー(通常は/public_html)にある.htaccessファイルの先頭に次のコードを追加します:
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
これが行うこと:
- RewriteEngine On — リライトエンジンを有効にします
- RewriteCond %{HTTPS} off — HTTPSがオフかどうかを確認します
- RewriteRule — すべてのトラフィックをHTTPSバージョンにリダイレクトし、パスとクエリパラメータを保持します
- 301 — SEOの利点のための恒久的なリダイレクト
トラブルシューティング
リダイレクトが機能しない場合:
- Apacheの設定で.htaccessが有効になっていることを確認してください
- サーバーでmod_rewriteが有効になっていることを確認してください
- ファイル内の下部に競合するリダイレクトが存在しないことを確認してください
HTTPSリダイレクトのテスト
変更を保存した後:
- http://yourdomain.comにアクセスします
- https://yourdomain.comにリダイレクトされるはずです
WordPressユーザーへの注意
WordPressを使用している場合、.htaccessでHTTPSを強制するだけでは不十分なことがあります。次の設定でWordPressアドレス(URL)とサイトアドレス(URL)を更新してください:
設定 → 一般 → 両方をhttps://yourdomain.comに変更します。
また、混在コンテンツの自動処理のためにReally Simple SSLのようなプラグインを検討してください。
まとめ
.htaccessでHTTPSを強制することは、サイトを保護するためのシンプルですが重要なステップです。データを保護し、ユーザーの信頼を築き、SEOの取り組みをサポートします。共有ホスティング、VPS、または専用サーバーを使用している場合、.htaccessメソッドは普遍的で効果的です。


