Jboss post要求体サイズ制限

2165 ワード

以前、Jboss serverで、1ページ3000件以上のデータpostをバックグラウンドにダウンロードした場合、リクエストを受けた場所がエラーとなりますが、3000件未満の場合はエラーとなりません.リクエスト体のサイズ制限によるエラーと疑われます.NodeJs serverで似たような問題が発生したため、クエリー資料で問題点が見つかりました.jbossにはmax-post-sizeという構成があります.
  • max-post-size Maximum size in bytes of a POST request that can be parsed by the container.

  • Attribute
    Value
    Default Value
    2097152
    Type
    INT
    Nillable
    true
    Expressions Allowed
    true
    Min
    0
    Max
    2,147,483,647
    Storage
    configuration
    Access Type
    read-write
    Restart Required
    all-services
    説明から分かるように、変更構成はjbossが処理できるpost requestのサイズを制限することであり、デフォルト値は2 MBであり、Chromeで3000以上のデータを発見したときcontent-lengthは2097125より大きいため、問題はここにある.まずjbossのmax-post-sizeの構成サイズを確認した../jboss-cli.sh --connect --controller=localhost:9999を実行してjboss cliに接続します.その後、/profile=sps-profile/subsystem=web/connector=http:read-resource(recursive=true)を実行して、次の結果を取得します.
    {
        "outcome" => "success",
        "result" => {
            "enable-lookups" => false,
            "enabled" => true,
            "executor" => undefined,
            "max-connections" => undefined,
            "max-post-size" => 2097152,
            "max-save-post-size" => 4096,
            "name" => "http",
            "protocol" => "HTTP/1.1",
            "proxy-binding" => undefined,
            "proxy-name" => undefined,
            "proxy-port" => undefined,
            "redirect-binding" => undefined,
            "redirect-port" => 443,
            "scheme" => "http",
            "secure" => false,
            "socket-binding" => "http",
            "virtual-server" => undefined,
            "configuration" => undefined
        }
    }
    

    max-post-sizeの値は2097152、つまり2 MBであることがわかります.この問題を解決するために、私たちのニーズを満たすために20 MBに変更する必要があります./profile=sps-profile/subsystem=web/connector=http:write-attribute(name=max-post-size,value=20971520)、影響を与えるserver-groupを再起動した後、この問題を解決します.