HTTP および HTTPS プロトコルについて簡単に学びましょう。
#1. プロトコルとは何ですか?
ネットワークプロトコルとは、ネットワーク通信を実現するためにコンピュータ間で交わされる「協定」や「規則」のことで、この「協定」によって、異なるメーカーの生産設備やコンピュータ間の通信が可能になります。さまざまなオペレーティング システムで構成されています。
2. HTTP プロトコルとは何ですか?
HTTP プロトコルとは、Hypertext Transfer Protocol の略で、英語名は Hyper Text Transfer Protocol です。 WEBサーバーからローカルブラウザへHTML(Hypertext Markup Language)を送信するための送信プロトコルです。
HTTP を設計する本来の目的は、HTML ページを発行および受信するためのメソッドを提供することでした。
HTTPP には複数のバージョンがあり、現在広く使用されているのは HTTP/1.1 バージョンです。
#3.HTTP の原理
HTTP は、TCP/IP 通信プロトコルに基づいてデータを送信するプロトコルであり、送信されるデータの種類は HTML ですファイル、、画像ファイル、クエリ結果など。 HTTP プロトコルは通常、B/S アーキテクチャで使用されます ()。ブラウザは HTTP クライアントとして、URL を介してすべてのリクエストを HTTP サーバー、つまり WEB サーバーに送信します。 例として Baidu にアクセスしてみましょう:
4.HTTP の機能
- http プロトコルはクライアント/サーバー モードをサポートしており、リクエスト/レスポンス モードの合意でもあります。
- シンプルかつ高速: クライアントがサーバーにサービスをリクエストするとき、クライアントはリクエストのメソッドとパスを送信するだけで済みます。一般的に使用されるリクエスト メソッドは、GET、HEAD、および POST です。
- 柔軟性: HTTP では、あらゆる種類のデータ オブジェクトの送信が可能です。送信のタイプは Content-Type によってマークされます。
- 接続なし: 各接続が 1 つのリクエストのみを処理するように制限します。サーバーがリクエストを処理し、クライアントからのレスポンスを受信した後、サーバーは切断されますが、これではクライアントとサーバー間のセッション接続を維持することはできません。この欠点を補うために、http ステータスを記録する 2 つのテクノロジーが使用されています。 1つはCookieと呼ばれ、もう1つはセッションと呼ばれます。
- ステートレス: ステートレスとは、プロトコルにトランザクション処理用のメモリがないことを意味します。後続の処理で以前の情報が必要な場合は、再送信する必要があります。
5. URI と URL の違い HTTP は、Uniform Resource Identifier (URI) を使用してデータを転送し、接続を確立します。
- URI:ユニフォーム リソース識別子ユニフォーム リソース
- Identifier
- Location
symbol
URI は特定のリソースをマークするために使用され、URI を通じてリソースが何であるかを知ることができます。
URL は、特定のリソースを見つけるために使用され、特定のリソースの場所をマークします。インターネット上のすべてのファイルには固有の URL があります。
#6. HTTP メッセージの構成リクエスト メッセージの構成
1. リクエスト行: リクエスト メソッド、URL、プロトコル/バージョンを含む
#2. リクエスト ヘッダー
#3. リクエスト本文

1. ステータス行 2. レスポンスヘッダー
3. レスポンスボディ

7. 一般的なリクエスト方法
- #GET: 指定されたページ情報を要求し、エンティティ本体を返します。
- POST: リクエストを処理するために指定されたリソースにデータを送信します (フォームの送信やファイルのアップロードなど)。データはリクエストボディに含まれます。 POST リクエストにより、新しいリソースが作成されたり、既存のリソースが変更されたりすることがあります。
- HEAD: get リクエストに似ていますが、返される応答に特定のコンテンツがない点が異なり、ヘッダー
- PUT を取得するために使用されます。 : クライアントから クライアントからサーバーに送信されたデータは、指定されたドキュメントの内容を置き換えます。
- DELETE: 指定されたページの削除をサーバーに要求します。


どちらにもリクエスト ヘッダーとリクエスト行が含まれていますが、post にはさらに多くのリクエスト本文が含まれています。
- get は主にクエリに使用され、リクエスト パラメータは URL に配置され、サーバー上のコンテンツには影響しません。投稿は本文にアカウントのパスワードを入れるなどして送信します。
- GET は URL の末尾に直接追加され、コンテンツは URL 内で直接確認できますが、POST はメッセージ内に配置され、ユーザーが直接確認することはできません。
- URL の長さに制限があるため、GET によって送信されるデータの長さは制限されます。具体的な長さの制限はブラウザによって異なります。 POSTはそうではありません。
8. レスポンスステータスコード
Webページにアクセスすると、ブラウザはメッセージを送信します。 Webサーバーに問い合わせます。この Web ページが配置されているサーバーは、ブラウザーの要求に応じて、HTTP ステータス コードを含む情報ヘッダーを返します。
ステータス コード分類:
1XX - 情報タイプ。サーバーはリクエストを受信し、リクエスターが操作を続行する必要があります。
- 2XX - 成功タイプ。リクエストは正常に受信され、理解され、処理されました。
- 3XX - リダイレクト。リクエストを完了するにはさらなるアクションが必要です。
- #4XX - クライアント エラー、リクエストに構文エラーが含まれているか、リクエストを完了できませんでした。
- #5XX - サーバー エラー。サーバーがリクエストを処理中にエラーが発生しました。
- #一般的なステータス コード
:
301 - リソース (Web ページなど) は他の URL に永続的に転送されます
- 302 - 一時的なジャンプ
#400 不正なリクエスト - クライアント リクエストには構文エラーがあるため、サーバーが理解できません。
401 不正 - リクエストは不正です。このステータス コードは次のとおりです。 WWW と同じ - Authenticate ヘッダー フィールドを一緒に使用します
#404 - 要求されたリソースは存在しません。間違った URL が入力された可能性があります
500 - サーバー内で予期しないエラーが発生しました##503 サーバーが利用できません - サーバーは現在クライアントのリクエストを処理できず、その後通常に戻る可能性がありますある期間。
-
9. https を使用する理由は何ですか? -
実際の使用では、ほとんどの Web サイトで https プロトコルが使用されています。これは、インターネットの将来の開発トレンドでもあります。以下は、Wireshark を通じてキャプチャされたブログ Web サイトのログイン要求プロセスです。ブログ ログイン パケット キャプチャ アクセスされたアカウントとパスワードがすべてクリア テキストで送信されていることがわかります。クライアントから送信されるデータは犯罪者によって傍受され、悪用されやすいため、HTTP プロトコルはさまざまな口座番号、パスワード、その他の情報などの一部の機密情報の送信には適していません。HTTP を使用することは非常に危険です。個人情報を送信するためのプロトコル。
一般に、http には次のような問題があります。
リクエスト情報は平文で送信されるため、盗聴によって簡単に傍受されます。
データの完全性が検証されておらず、簡単に改ざんされる可能性がある
相手方の身元が検証されておらず、かつなりすましの危険があります
10. HTTPSとは何ですか?
上記の問題を解決するにはHTTP、HTTPSが使用されます。
HTTPS プロトコル (HyperText Transfer Protocol over Secure Socket Layer): 一般に HTTP SSL/TLS として理解され、サーバーの ID は SSL 証明書によって検証され、ブラウザとサーバー間の通信は暗号化されます。
#それでは、SSL とは何でしょうか?
SSL (Secure Socket Layer): 1994 年に Netscape によって開発された SSL プロトコルは、TCP/IP プロトコルとさまざまなアプリケーション層プロトコルの間に位置し、データ通信によりセキュリティ サポートを提供します。 。 TLS (Transport Layer Security、Transport Layer Security): その前身は SSL で、最初のいくつかのバージョン (SSL 1.0、SSL 2.0、SSL 3.0) は Netscape によって開発され、1999 年の 3.1 から採用されました。 IETF が標準化して名前を変更し、現在は TLS 1.0、TLS 1.1、および TLS 1.2 の 3 つのバージョンがあります。 SSL3.0 と TLS1.0 は、セキュリティの脆弱性のため、ほとんど使用されません。 TLS 1.3 には大きな変更が加えられ、まだドラフト段階にありますが、最も広く使用されているのは TLS 1.1 と TLS 1.2 です。SSL 開発の歴史 (インターネット暗号化通信)
1. 1994 年に NetSpace は SSL プロトコル (Secure Sockets Layout) のバージョン 1.0 を設計しましたが、リリースされませんでした。 。#2. NetSpace は 1995 年に SSL/2.0 バージョンをリリースし、深刻な脆弱性がすぐに発見されました
#3. SSL/3.0 バージョンは 1996 年にリリースされ、広く使用されました4、1999 年に、SSL アップグレード バージョン TLS/1.0 がリリースされ、現在最も広く使用されているバージョン#5。2006 年と 2008 年には、TLS/1.1 および TLS/1.2 バージョン
11. HTTPS を使用してデータを送信するブラウザのプロセスは何ですか?
HTTPS データ転送プロセス #1 、まず、クライアントは URL を通じてサーバーにアクセスし、SSL 接続を確立します。 3. クライアントのサーバーは、SSL 接続のセキュリティ レベル (情報暗号化のレベル) のネゴシエーションを開始します。 4. クライアントのブラウザは、双方が合意したセキュリティ レベルに基づいてセッション キーを確立し、Web サイトの公開キーを使用してセッション キーを暗号化し、Web サイトに送信します。 5. サーバーは独自の秘密キーを使用してセッション キーを復号化します。 6. サーバーはセッション キーを使用してクライアントとの通信を暗号化します。 12. HTTPS の欠点2. クライアントのリクエストを受信した後、サーバーは Web サイトでサポートされている証明書情報 (証明書には公開キーが含まれています) のコピーをクライアントに送信します。 HTTPS プロトコルには複数のハンドシェイクがあるため、通信量が 50% 近く増加します。ページの読み込み時間。;
- HTTPS 接続キャッシュは HTTP ほど効率的ではないため、データのオーバーヘッドと電力消費が増加します。;
- 費用がかかりますSSL証明書の申請にお金がかかるほど、機能が強力になり、証明書のコストも高くなります。
- SSL に関連するセキュリティ アルゴリズムは CPU リソースを消費し、大量のサーバー リソースを消費します。
- 13. HTTPS と HTTP の違いの要約
HTTPS は、HTTPS のセキュリティです。 HTTP プロトコル バージョン。HTTP プロトコルのデータ送信はクリア テキストで安全ではありません。HTTPS は暗号化に SSL/TLS プロトコルを使用します。
- http と https では接続方法が異なり、デフォルトのポートも異なります。http は 80、https は 443 です。
推奨チュートリアル: Web サーバーのセキュリティ
以上がHTTP および HTTPS プロトコルについて簡単に学びましょう。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









HTTP ステータス コード 520 は、サーバーがリクエストの処理中に不明なエラーに遭遇し、より具体的な情報を提供できないことを意味します。サーバーがリクエストを処理しているときに不明なエラーが発生したことを示すために使用されます。サーバー構成の問題、ネットワークの問題、またはその他の不明な理由が原因である可能性があります。これは通常、サーバー構成の問題、ネットワークの問題、サーバーの過負荷、またはコーディング エラーが原因で発生します。ステータス コード 520 エラーが発生した場合は、Web サイト管理者またはテクニカル サポート チームに連絡して詳細情報と支援を得ることが最善です。

HTTP ステータス コード 403 は、サーバーがクライアントの要求を拒否したことを意味します。 http ステータス コード 403 の解決策は次のとおりです: 1. 認証資格情報を確認します。サーバーが認証を必要とする場合は、正しい資格情報が提供されていることを確認します。2. IP アドレス制限を確認します。サーバーが IP アドレスを制限している場合は、クライアントの IP アドレスは制限されています。ホワイトリストに登録されているか、ブラックリストに登録されていません。3. ファイルのアクセス許可設定を確認します。403 ステータス コードがファイルまたはディレクトリのアクセス許可設定に関連している場合は、クライアントがこれらのファイルまたはディレクトリにアクセスするための十分なアクセス許可を持っていることを確認してください。等

NginxProxyManager を使用して HTTPS プロトコルでリバース プロキシを実装する方法 近年、インターネットの普及とアプリケーション シナリオの多様化に伴い、Web サイトやアプリケーションへのアクセス方法はますます複雑になっています。 Web サイトへのアクセス効率とセキュリティを向上させるために、多くの Web サイトはユーザーのリクエストを処理するためにリバース プロキシを使用し始めています。 HTTPS プロトコルのリバース プロキシは、ユーザーのプライバシーを保護し、通信のセキュリティを確保する上で重要な役割を果たします。この記事ではNginxProxyの使い方を紹介します。

HTTP 301 ステータス コードの意味を理解する: Web ページ リダイレクトの一般的なアプリケーション シナリオ インターネットの急速な発展に伴い、Web ページの操作に対する人々の要求はますます高くなっています。 Web デザインの分野では、Web ページのリダイレクトは一般的かつ重要なテクノロジであり、HTTP 301 ステータス コードによって実装されます。この記事では、HTTP 301 ステータス コードの意味と、Web ページ リダイレクトにおける一般的なアプリケーション シナリオについて説明します。 HTTP301 ステータス コードは、永続的なリダイレクト (PermanentRedirect) を指します。サーバーがクライアントのメッセージを受信すると、

NginxProxyManager を使用して HTTP から HTTPS への自動ジャンプを実装する方法 インターネットの発展に伴い、ますます多くの Web サイトが HTTPS プロトコルを使用してデータ送信を暗号化し、データ セキュリティとユーザーのプライバシー保護を向上させ始めています。 HTTPS プロトコルは SSL 証明書のサポートを必要とするため、HTTPS プロトコルを展開する際には特定の技術サポートが必要です。 Nginx は強力で一般的に使用される HTTP サーバーおよびリバース プロキシ サーバーであり、NginxProxy

クイック アプリケーション: PHP の実践的な開発ケース分析 複数ファイルの非同期 HTTP ダウンロード インターネットの発展に伴い、ファイル ダウンロード機能は多くの Web サイトやアプリケーションの基本的なニーズの 1 つになりました。複数のファイルを同時にダウンロードする必要があるシナリオでは、従来の同期ダウンロード方法は非効率的で時間がかかることがよくあります。このため、PHP を使用して HTTP 経由で複数のファイルを非同期にダウンロードするソリューションがますます一般的になってきています。この記事では、実際の開発事例を通して、PHP 非同期 HTTP の使用方法を詳しく分析します。

C# におけるネットワーク通信とセキュリティの一般的な問題と解決策 今日のインターネット時代では、ネットワーク通信はソフトウェア開発に不可欠な部分となっています。 C# では通常、データ送信のセキュリティ、ネットワーク接続の安定性など、ネットワーク通信の問題が発生します。この記事では、C# における一般的なネットワーク通信とセキュリティの問題について詳しく説明し、対応する解決策とコード例を提供します。 1. ネットワーク通信の問題 ネットワーク接続の中断: ネットワーク通信プロセス中に、ネットワーク接続が中断される場合があります。

HTTP ステータス コード 200: 成功した応答の意味と目的を調べる HTTP ステータス コードは、サーバーの応答のステータスを示すために使用される数値コードです。このうち、ステータス コード 200 は、リクエストがサーバーによって正常に処理されたことを示します。この記事では、HTTP ステータス コード 200 の具体的な意味と使用法について説明します。まず、HTTP ステータス コードの分類を理解しましょう。ステータス コードは、1xx、2xx、3xx、4xx、5xx の 5 つのカテゴリに分類されます。このうち、2xx は成功応答を示します。 200 は 2xx で最も一般的なステータス コードです
