あなたのサイトでの HTTPS の有効化

From Joomla! Documentation

This page is a translated version of the page Enabling HTTPS on your site and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎português do Brasil • ‎日本語

SSL/TLS とは何ですか?

トランスポート層警備 (TLS) は、セキュア ソケット レイヤー (SSL) の後継ですが、多くの人は今でもこれを SSL と呼んでいます。 インターネットを閲覧している時に、URL の横にロック アイコンが表示されている事にお気づきですか? これは、その ウェブサイトに送信する全てのデータが暗号化されて送信される事を意味します。そのため、ネットワークをハッキングしてリクエストを傍受出来る人物は、データを一切閲覧出来ません。閲覧出来るのは、アクセスしている URL だけです。

TLS を使用する理由

Google(および他のほとんどの検索エンジン)は現在、「https」を使用しているサイトを優先的に扱います。[1]さらに、多くのブラウザは、「https」を使用していないフォーム(ログインフォームやお問い合わせフォームなど)のあるウェブサイトにフラグを付けます。[2]

TLS を設定するにはどうすればよいですか?

証明書を設定する最も簡単な方法は、ホストに設定を依頼する事です。

使用する適切な証明書は、ウェブサイトで必要な警備保護によって異なります。最も安価で簡単なオプションは、「Let's Encrypt」 を使用する事です。これは無料で、ホストによっては、「cPanel」 または 「Plesk」 ホスティング ダッシュボードから直接構成出来る場合がよくあります。

専用 IP と SSL 証明書を購入した場合は、ホストに依頼して署名して貰い、適切な場所にインストールして貰います。

全てのトラフィックを「https」にリダイレクトするにはどうすればいいですか

ジュームラ!の場合

「https」トラフィックを強制する最も簡単な方法は、ジュームラ!内で実行する事です。「グローバル設定」には、「HTTPS を強制」オプションがあり、管理者のみまたはサイト全体で HTTPS を強制出来ます。後者をお勧めします。

Image Showing the Force HTTPS option in the Joomla 3.x default backend template

「.htaccess」の場合

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]
<IfModule !mod_ssl.c>
Redirect permanent / https://www.yourdomainname.com
</IfModule>

さらに複雑な「.htaccess」の例

URL に「abc/def」または「ghi」が含まれるページで HTTP から HTTPS に切り替えるには、次のようなコードを追加します。

コード:

RewriteCond %{HTTPS} off
RewriteRule ^(abc/def|ghi)(.*)/?$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,NC,L]

...URL に「home」または「help」が含まれるページで HTTPS から HTTP に切り替えるには、次のようにします。

コード:

RewriteCond %{HTTPS} on
RewriteRule ^(home|help)(.*)/?$ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,NC,L]

特定のフォルダーで SSL を強制する場合は、その特定のフォルダーに配置された「.htaccess」ファイルに以下のコードを挿入します。

コード:

RewriteEngine On
RewriteCond %{REQUEST_URI} folder
RewriteRule ^(.*)$ https://www.example.com/folder/$1 [R,L]

フォルダー参照を実際のフォルダー名に変更して下さい。次に、「www.example.com/folder」を、SSL を強制する実際のドメイン名とフォルダーに置き換えて下さい。