最近、1and1からドメインを購入しました。次に、1and1のドメインセンターを使用して、GitHubページにリダイレクトしました(たとえば、http://example.com
からhttps://foo.github.io
)(以下のスクリーンショットを参照)。
HTTPSがGitHubページにリダイレクトされるように、ドメインをhttp://example.com
からhttps://example.com
にリダイレクトする必要があります。これをどのように行うことができますか?
これは私が理解していることです:
Githubページfoo.github.ioがあります
ドメインexample.comは、githubが提供するIPアドレスを持つAレコードを介してfoo.github.ioにリダイレクトされます。これにより、URL example.comを使用すると、アドレスバーにexample.comが表示されますが、データはfoo.github.ioからのものです。基本的に、example.comとfoo.github.ioは同じページを表示します。
現在、githubの性質は、httpとhttpsの両方をサポートしていることです。 example.comでhttpをリクエストすると、 http://example.com が提供され、httpsをリクエストすると、 https://example.com (SSL証明書キーがgithubにある場合)。
あなたが求めているのは、httpがリクエストされたのかhttpsがリクエストされたとしても、常にhttpsのみが提供されるべきだということです。
現在、ASP.NETやPHPやLAMPなどの動的言語とサーバーでは、サーバー側で行われますが、githubは静的なhtmljavasçiptcssファイルのみをサポートするため、唯一の選択肢はjavascriptの場所を使用することです.href.replaceは、プロトコルがhttpかどうかを検出して、httpsにリダイレクトします。
私はモバイルでフライトに搭乗しようとしているので、同様の質問のJavaScriptコードを引用します answer :
if (location.protocol != 'https:')
{
location.href = 'https:' + window.location.href.substring(window.location.protocol.length);
}
注:1&1のシステムでexample.comのSSL秘密鍵と公開鍵を設定したことがない場合は、最初にそれを行う必要があります。それ以外の場合は https://example.com が要求され、ブラウザにエラーが表示されます。休暇から戻ったときにいくつかの手順を追加します。