HTTPS で GitHub Pages サイトを保護する

HTTPS は、他者によるあなたのサイトへのトラフィックの詮索や改ざんを防ぐ暗号化のレイヤーを追加します。 透過的に HTTP リクエストを HTTPS にリダイレクトするために、あなたの GitHub Pages サイトに HTTPS を強制できます。

GitHub Pagesは、GitHub Free及びOrganizationのGitHub Freeのパブリックリポジトリ、GitHub Pro、GitHub Team、GitHub Enterprise Cloud、GitHub Enterprise Serverのパブリック及びプライベートリポジトリで利用できます。 詳しい情報については「GitHubの製品」を参照してください。

リポジトリの管理者権限があるユーザは、GitHub Pages サイトに強制的に HTTPS を指定できます。

HTTPS と GitHub Pages について

カスタムドメインが正しく設定されたサイトを含めたすべての GitHub Pages サイトは、HTTPS や HTTPS 強制をサポートします。 カスタムドメインの詳細は、「カスタムドメインと GitHub Pages について」と「カスタムドメインと GitHub Pages のトラブルシューティング」を参照してください。

GitHub Pages サイトは、パスワードやクレジットカード番号といった機密情報のやりとりに使うべきではありません。

警告: GitHub Pagesサイトはデフォルトで、サイトのリポジトリがプライベートもしくはインターナルであっても、インターネット上で公開利用できます。 プロジェクトサイトがGitHub Enterprise Cloudを使用するOrganizationが所有するプライベートもしくはインターナルリポジトリから公開されるなら、そのサイトのアクセス制御を管理できます。そうでない場合は、もしセンシティブなデータがサイトのリポジトリにあるなら、公開前にそのデータを削除しておくとよいでしょう。 詳しい情報については、「リポジトリの可視性について」及び「GitHub Pagesサイトの可視性の変更」を参照してください。

あなたの GitHub Pages サイトに HTTPS を強制する

  1. GitHubで、サイトのリポジトリにアクセスしてください。

  2. リポジトリ名の下で Settings(設定)をクリックしてください。 リポジトリの設定ボタン

  3. 左のサイドバーでPages(ページ)をクリックしてください。 左のサイドバーのPageタブ

  4. [GitHub Pages] で、[Enforce HTTPS] を選択します。 [Enforce HTTPS] チェックボックス

混在したコンテンツの問題を解決する

GitHub Pages サイトの HTTPS を有効化したが、サイトの HTML がまだ HTTP 経由で画像、CSS、JavaScript を参照している場合、サイトは混在したコンテンツを提供する場合があります。 混在したコンテンツを提供することで、サイトのセキュリティが下がり、アセットの読み込みに問題が生じる場合があります。

サイトでコンテンツの混在を解消するには、サイトの HTML で http://https:// に変更して、すべてのアセットが HTTPS 経由で提供されるようにしてください。

アセットは通常、以下の場所にあります。

  • サイトで Jekyll を使用している場合、HTML ファイルは _layouts フォルダにあります。
  • CSS は普通、HTML ファイルの <head> セクションにあります。
  • JavaScript は通常、<head> セクションまたは閉じタグ </body> の直前にあります。
  • 画像はたいてい、<body> セクションにあります。

ヒント: サイトのソースファイルでアセットが見つからない場合は、テキストエディタまたは GitHub 上で、サイトのソースファイルから httpを検索してみましょう。

HTML ファイルで参照されているアセットの例

アセットのタイプHTTPHTTPS
CSS<link rel="stylesheet" href="http://example.com/css/main.css"><link rel="stylesheet" href="https://example.com/css/main.css">
JavaScript<script type="text/javascript" src="http://example.com/js/main.js"></script><script type="text/javascript" src="https://example.com/js/main.js"></script>
画像<A HREF="http://www.somesite.com"><IMG SRC="http://www.example.com/logo.jpg" alt="Logo"></a><A HREF="https://www.somesite.com"><IMG SRC="https://www.example.com/logo.jpg" alt="Logo"></a>

このドキュメントは役立ちましたか?プライバシーポリシー

これらのドキュメントを素晴らしいものにするのを手伝ってください!

GitHubのすべてのドキュメントはオープンソースです。間違っていたり、はっきりしないところがありましたか?Pull Requestをお送りください。

コントリビューションを行う

OR, コントリビューションの方法を学んでください。

問題がまだ解決していませんか?

GitHubコミュニティで質問するサポートへの連絡