【问题标题】:How to change Jenkins/Jetty max header size如何更改 Jenkins/Jetty 最大标头大小
【发布时间】:2017-02-15 16:44:35
【问题描述】:

使用嵌入式 Jetty 运行 Jenkins 服务器,我收到有关 Jenkins 日志中的标头太大的错误:

2017 年 2 月 15 日下午 3:18:15 org.eclipse.jetty.util.log.JavaUtilLog 警告 警告:标头已满:java.lang.ArrayIndexOutOfBoundsException:8192

我想增加 Jetty 的最大标头大小,但在 Jenkins 的情况下找不到如何做...我找不到任何 Jetty 配置文件,不知道是否可以在 Jenkins 命令行上设置限制(以及要定义的变量的名称是什么)。

如何做到这一点?

【问题讨论】:

    标签: jenkins jetty embedded-jetty


    【解决方案1】:

    如果使用自运行 jenkins.war 中的内置 Jetty,则无法调整该值。

    你只能调整参数的最大数量。

    --maxParamCount=N   = set the max number of parameters allowed in a form submission to protect
                          against hash DoS attack (oCERT #2011-003). Default is 10000.
    

    要么将战争部署到一个完整的容器,然后您可以调整值,或者更改您使用 Jenkins 的方式以不发送过多的 URI 或 HTTP 标头(例如使用 POST 与 GET)。

    要调整 Jetty 9 标头缓冲区的最大大小,您需要调整 HttpConfiguration 中的 requestHeaderSize 以匹配您希望新设置存在的 ServerConnector

    【讨论】:

      【解决方案2】:

      将此参数添加到 jenkins 配置中:

      JENKINS_ARGS="--requestHeaderSize=258140"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-10-02
        • 2013-08-10
        • 1970-01-01
        • 2023-03-12
        • 2019-11-10
        相关资源
        最近更新 更多