Jekyllを使用して個人のWebサイトを構築し、それをgithub-pagesでホストしています。パスワードで保護された領域(ウェブサイト全体ではなく、パスワードで保護されたディレクトリのみ)が欲しいのですが。 htaccess
を機能させるためにいくつかのオプションとトリックを試しましたが、失敗しました。
誰かがhtaccess
または他の方法を使用してgithub-pages上のディレクトリを保護できたかどうかを知りたいのですが。
私にとってうまくいかなかった(または私がそれらをうまく働かせることに失敗した)ソリューションのリスト:
* Flohei。
* ジェレミー・リケッツ
GitHubPages(Bitbucket PagesやGitLab Pagesなど)は静的ページのみを提供するため、唯一の解決策はクライアント側(Javascript)です。
解決策は、実際の認証を使用する代わりに、許可されたすべての人とシークレット(パスワード)のみを共有し、次のスキームのいずれかを実装することです。
すべてのプライベートファイルを(リストされていない)サブディレクトリに配置し、選択したパスワードのハッシュを使用して名前を付けます。インデックスページでは、(JavaScriptを使用して)パスワードを要求し、ハッシュを計算する正しい開始リンクを作成します。
例を参照してください: https://github.com/matteobrusa/Password-protection-for-static-pages
PRO:非常にシンプルなアプローチサブディレクトリツリー全体を保護
短所:
パスワードでページを暗号化し、JavaScriptでその場で復号化する
例を参照してください: https://github.com/robinmoisson/staticrypt
PRO:プレーンテキストのページコードはありません(クライアント側で復号化が行われます)
短所:
Jekyll Auth を試してみて、問題が発生した場合は この問題が役立つことがあります 。
1つのオプションは、Cloudflare Accessを使用して、DNSレベルでアクセスを制御することです。 Cloudflare for DNSを使用してGitページのカスタムドメインを設定した後、それらのアクセスルールポリシーを使用して、指定されたURLパスでの認証を要求できます。
誰かがDNSブロックのバイパスに慣れている場合、これはまだバイパスされる可能性があります。