HTTPとHTTPS
HTTP は、ブラウザとサーバーが Web ページの情報をやり取りするためのルールです。
HTTPS は、HTTP の通信を暗号化して、より安全にしたものです。
ブラウザでページが開く流れ
ブラウザで URL を開くと、裏側では次のようなやり取りが起きます。
- ブラウザが URL を読む
- ドメインから接続先のサーバーを探す
- ブラウザがサーバーへリクエストを送る
- サーバーが HTML や画像などをレスポンスとして返す
- ブラウザが画面に表示する
ブラウザ → リクエスト → サーバー
ブラウザ ← レスポンス ← サーバー
HTTPとは
HTTP は HyperText Transfer Protocol の略です。
Web ページ、画像、CSS、JavaScript、API のデータなどを送受信するために使われます。
http://example.com/
ただし HTTP の通信は暗号化されません。ログイン、フォーム送信、決済などの情報を扱うサイトでは、HTTP のままだと安全ではありません。
HTTPSとは
HTTPS は、HTTP に暗号化を加えた通信です。
https://example.com/
HTTPS では、通信の途中で内容を盗み見されたり、改ざんされたりする危険を減らせます。
現在の Web サイト公開では、基本的に HTTPS で公開する のが標準です。
HTTPとHTTPSの違い
| 比較 | HTTP | HTTPS |
|---|---|---|
| URL | http:// | https:// |
| 暗号化 | なし | あり |
| フォーム送信 | 避けたい | 推奨 |
| ブラウザ表示 | 警告が出ることがある | 鍵マークが表示されやすい |
| 現在の公開サイト | 非推奨 | 標準 |
HTTPSに必要な証明書
HTTPS には、サーバーが本物であることを示す SSL/TLS 証明書 が使われます。
GitHub Pages、Vercel、Netlify、Cloudflare などのサービスでは、証明書を自動で用意してくれることが多いです。
独自ドメインを使う場合は、DNS 設定が正しく反映されたあとに HTTPS が有効になります。
よく見るステータスコード
HTTP のレスポンスには、結果を表すステータスコードが含まれます。
| コード | 意味 | よくある場面 |
|---|---|---|
200 | 成功 | ページが正常に表示された |
301 | 恒久的なリダイレクト | 古い URL から新しい URL へ移動 |
302 | 一時的なリダイレクト | ログイン画面などへ一時移動 |
404 | 見つからない | URL やファイル名が間違っている |
500 | サーバーエラー | サーバー側の処理で問題が起きた |
ページが開けないときは、ステータスコードを見ると原因を絞りやすくなります。
ローカル開発のHTTP
自分の PC で開発中に見る URL は、HTTP のことがあります。
http://localhost:3000/
localhost は自分の PC を表す特別な名前です。ローカル開発では HTTP でも問題ない場面が多いですが、公開サイトでは HTTPS にしましょう。
公開前のチェック
- 本番サイトが
https://で開ける http://で開いたときにhttps://へリダイレクトされる- ブラウザに危険なサイトの警告が出ない
- フォームやログインページが HTTPS で表示される
- Search Console や AdSense に登録する URL が HTTPS になっている
独自ドメインを設定する具体的な手順は、独自ドメイン設定(Cloudflare + GitHub Pages) も参照してください。