Tomcat の maxPostSize 設定に関する問題と注意事項

Tomcat の maxPostSize 設定に関する問題と注意事項

1. maxPostSize を設定する理由は何ですか?

tomcat コンテナには送信データのサイズ制限があり、この値を超えるファイルをアップロードするとエラーが発生し、プログラムを正常に使用できなくなります。

2.設定方法

tomcatディレクトリの/conf/server.xmlを探し、そこにmaxPostSizeパラメータを追加します。

パラメータ値「-1」はサイズ制限がないことを意味します。 maxPostSize パラメータを設定しないと、デフォルトのサイズ (2097152 バイト、つまり 2 メガバイト) が使用されることになります。

3. 設定値に関する注意

注意すべき点は、異なるバージョンの Tomcat で送信されるデータのサイズに制限がない場合、maxPostSize の値は同じではないということです。

具体的な違い:

tomcat7.0.63より前では、maxPostSizeを0以下の値に設定すると制限がなくなる。

tomcat7.0.63以降では、maxPostSizeを0未満の値に設定すると制限がなくなる。

tomcat7.0.63以降でmaxPostSize="0"に設定すると、送信されたデータは取得されません。

4. 公式ドキュメント

tomcat changeLogを添付

ps: Tomcat が maxPostSize を設定するため、Post リクエストが失敗する

質問:

最近、Tomcat バージョン 7.0.82.0 を使用してプロジェクトを展開しました。ログインできないことがわかりました。フロントエンドからのデータをバックエンドに渡すことができないことがわかりました。

トラブルシューティング: デバッグ ログから、バックエンドがフロントエンド ユーザーのログイン データを受信しなかったことが判明しました。確認したところ、Tomcat が server.xml にパラメーター maxPostSize=0 を追加したことが判明しました。このパラメーターを削除した後、データが受信されたことが判明しました。

分析:

私は maxPostSize=0 を検索しました。これは、POST リクエストにサイズ制限がないことを意味します。長い間 Google 検索した後、apache-tomcat-7.0.63 以降、パラメーター maxPostSize の意味が変わったことがわかりました。値が 0 に設定されている場合、最大 POST 値は 0 であることを意味します。POST サイズを制限しないようにするには、値を -1 に設定する必要があります。このバージョンより前では、POST サイズに制限がないことを示すために 0 に設定されていました。

Tomcat の maxPostSize 設定に関する問題点と注意点については以上です。Tomcat の maxPostSize 設定の詳細については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Spring Boot 経由で Tomcat を設定することで、ポストパラメータ制限の問題を解決する
  • TomcatのmaxPostSize属性を設定する際に注意する必要がある問題を解決する
  • Tomcat maxPostSize設定実装プロセス分析
  • Spring Boot で組み込み Tomcat の maxPostSize 値を設定する方法

<<:  Vue+echarts で積み上げ棒グラフを実現

>>:  CentOS7.8 に mysql 8.0.20 をインストールするための詳細なチュートリアル

推薦する

検証コード干渉を実装する js (動的)

この記事の例では、検証コードの動的干渉を実装するためのjsの具体的なコードを共有しています。具体的な...

SSH経由でリモートLinuxシステムでコマンドを実行する方法

場合によっては、リモート マシンでいくつかのコマンドを実行する必要があることがあります。これが時々行...

HTML ウェブページにおけるさまざまなフォント形式の詳細

このセクションでは、テキストの変更の詳細から始めます。これにより、読者はさまざまな HTML フォン...

Nginx ポート競合を解決するトラブルシューティング方法の例

問題の説明データ転送に Nginx を使用し、フロントエンドとバックエンドが分離された Spring...

Dockerイメージが消える問題を解決する

1. 50と93では鏡像が消える [root@h50 /]# df -h ファイルシステムの使用済み...

組み込み Linux で QT アプリケーションを再起動する簡単な方法 (QT4.8 qws ベース)

アプリケーション ソフトウェアには通常、次のようなビジネス要件があります。新しいバージョンの APP...

一般的なSQL削除ステートメントの原則の違いを理解するだけです

この記事では主に、SQL 削除ステートメント DROP、TRUNCATE、および DELETE の違...

IframeとFRAMEの違いの分析

1. Iframe タグの使用<br />Iframe については、「忘れられた隅」に放...

Dockerでデータディレクトリを移行する方法

目次ディスク使用量の表示ディスク クリーンアップ (軽々しく使用しないでください)データの移行ディス...

MySQL 関数インデックス最適化ソリューション

MySQL を使用する場合、多くの開発者は一部の列に対して関数計算を実行することが多く、その結果、イ...

Linuxオペレーティングシステムは、タスクマネージャーの視覚化機能を実装するためにPythonを使用しています。

1. Pythonのインストール1. フォルダーを作成します。 mkdir python フォルダ...

CSS Houdini でダイナミックな波効果を実現

CSS Houdini は、CSS 分野における最もエキサイティングなイノベーションとして知られてい...

MySQL PHP 構文の簡単な分析

まずcharAt関数の基本的な構文を見てみましょう文字 = str.charAt(インデックス) c...

Web デザイン体験: 5 つの優れた Web デザイン コンセプトの完全分析 (画像)

他の種類のデザインとは異なり、Web デザインは時代の発展とともに常に変化しています。したがって、W...

Nginx の構成と HTTP 実装コード分析との互換性

OpenSSL を使用して SSL キーと CSR ファイルを生成するHTTPS を設定するには、秘...