ホームページ >バックエンド開発 >PHPの問題 >PHPのgetとpostの違いは何ですか?

PHPのgetとpostの違いは何ですか?

Guanhui
Guanhuiオリジナル
2020-06-22 10:48:433099ブラウズ

PHPのgetとpostの違いは何ですか?

#PHP における get と post の違いは何ですか?

1. Get はサーバーからデータを取得すること、post はサーバーにデータを送信することです;

2. get によって送信されるデータは 2KB を超えることはできませんが、 post によって送信されるデータにはサイズがありません 制限事項;

3. get の安全性は非常に低いですが、post の安全性は高いです。

おすすめ記事: PHP

GET メソッドの長さ制限

HTTP Get メソッドによって送信されるデータのサイズと長さに制限はありません。HTTP プロトコル仕様では、URL の長さに制限がありません。この制限は、特定のブラウザとサーバーによって課されます。

例: IE の URL の長さの制限は 2083 バイト (2K 35) です。

以下は、さまざまなブラウザおよびサーバーの最大処理能力についての説明です

Microsoft Internet Explorer (ブラウザ)

IE ブラウザの URL の最大制限は 2083 文字です。 . この数を超えると、送信ボタンは無反応になります。

Firefox (ブラウザ)

Firefox ブラウザの URL の長さ制限は 65,536 文字です。

Safari (ブラウザ)

URL の最大長は 80,000 文字に制限されています。

Opera (ブラウザ)

URL の最大長は 190,000 文字に制限されています。

Google (chrome)

URL の最大長は 8182 文字に制限されています。

Apache (サーバー)

URL の最大長は 8,192 文字に制限されています。

Microsoft Internet Information Server(IIS)

URL の最大長は 16,384 文字に制限されています。

上記のデータから、すべてのユーザーが正常に閲覧できるようにするには、URL が IE の最大長制限 (2083 文字) を超えないようにする必要があることがわかります。 URL がユーザーに直接提供されず、プログラム呼び出しに提供される場合、この時点の長さは Web サーバーによってのみ影響されます。

注: 中国語の送信の場合、最終的には urlencode 以降のエンコード形式で送信されますが、ブラウザのエンコードが UTF8 の場合、最終的にエンコードされた中国語の文字長は 9 文字になります。

したがって、GET メソッドを使用する場合、最大長は、URL の最大長から実際のパスの文字数を引いたものと等しくなります。

POST メソッドの長さ制限

理論的には、POST にはサイズ制限はありません。 HTTP プロトコルの仕様にはサイズ制限がありませんが、制限されるのはサーバーのハンドラーの処理能力です。

例: Tomcat の POST サイズ制限をキャンセルします (Tomcat のデフォルトは 2M);

tomcat ディレクトリの下の conf ディレクトリを開き、server.xml ファイルを開いて、maxPostSize= を変更します。 0" (0 に設定すると POST サイズ制限が解除されます)

また、HTTP プロトコルでは GET/POST のリクエスト長制限が指定されたことはありません。

私たちが毎日呼び出すリクエストの長さの制限は、ブラウザーと Web サーバーによって決定および設定されます。さまざまなブラウザーと Web サーバーの設定は異なり、各ブラウザーの製造元の規制に依存するか、またはそれに応じて設定できます。 Web サーバーの処理能力に影響します。

関連する推奨事項: 「
PHP HTTP プロトコル ビデオ チュートリアル

以上がPHPのgetとpostの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。