A.27. Undertow 子系统属性
下表中列出了 undertow
子系统的各种元素的属性。
这些表中的属性名称会在管理模型中出现时列出,例如使用管理 CLI 时。请参阅位于 EAP_HOME/docs/schema/wildfly-undertow_4_0.xsd
的架构定义文件,以查看 XML 中出现的元素,因为管理模型可能会有所不同。
属性 | 默认 | 描述 |
---|---|---|
default-security-domain | 其他 | Web 部署使用的默认安全域。 |
default-server | default-server | 用于部署的默认服务器。 |
default-servlet-container | default | 用于部署的默认 servlet 容器。 |
default-virtual-host | default-host | 用于部署的默认虚拟主机。 |
instance-id | ${jboss.node.name} | 集群实例 ID。 |
statistics-enabled | false | 是否启用统计数据. |
应用程序安全域属性
应用程序安全域属性具有以下结构:
application-security-domain Attributes
属性 | 默认 | 描述 |
---|---|---|
enable-jacc | false | 通过 JACC 启用授权。 |
enable-jaspi | true | 为关联的部署启用 JASPI 身份验证。 |
http-authentication-factory | 引用映射的安全域的部署要使用的 HTTP 身份验证工厂。 | |
integrated-jaspi | true |
是否应使用集成的 JASPI。当在 JASPI 身份验证期间设置为 |
override-deployment-config | false | 部署中的身份验证配置是否应该被工厂覆盖。 |
引用部署 | 当前引用此映射的部署。 | |
security-domain |
部署要使用的 |
单点登录属性
属性 | 默认 | 描述 |
---|---|---|
client-ssl-context | 引用用于保护 back-channel 注销连接的 SSL 上下文。 | |
cookie-name | JSESSIONIDSSO | Cookie 的名称。 |
credential-reference | 凭据引用用于解密私钥条目。 | |
domain | 将使用的 Cookie 域。 | |
http-only | false | 设置 Cookie httpOnly 属性. |
key-alias | 用于签名并验证 back-channel 注销连接的私钥条目别名。 | |
key-store | 对包含私钥条目的密钥存储的引用. | |
路径 | / | Cookie 路径. |
安全 | false | 设置 Cookie 安全属性. |
缓冲区缓存属性
属性 | 默认 | 描述 |
---|---|---|
buffer-size | 1024 | 缓冲区的大小。更小的缓冲区允许更有效地使用空间。 |
buffers-per-region | 1024 | 每个区域的缓冲区数量。 |
Max-regions | 10 | 区域的最大数量.这控制可用于缓存的最大内存量。 |
字节缓冲区池属性
属性 | 默认 | 描述 |
---|---|---|
buffer-size | 每个缓冲区片段的大小(以字节为单位)。如果没有指定,则根据系统的可用 RAM 设置大小:
有关此属性的性能调优建议,请参阅 JBoss EAP 性能调优指南中的配置 https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.3/html-single/performance_tuning_guide/#io_buffer_pools 缓冲池。 | |
direct | 表示此缓冲区是否为直接还是堆池的布尔值。如果没有指定,则该值会根据系统的可用 RAM 设置:
请注意,直接池也有对应的堆池。 | |
leak-detection-percent | 0 | 应使用泄漏检测器分配的缓冲区百分比。 |
max-pool-size | 要在池中保留的最大缓冲区数量。缓冲区仍会被分配超过这个限制,但如果池已满,则不会保留。 | |
thread-local-cache-size | 12 | 每个线程缓存的大小。这是最大大小,缓存将使用智能大小调整来仅在线程实际分配缓冲区时保留线程上的缓冲。 |
servlet 容器属性
servlet 容器组件具有以下结构:
servlet-container 属性
属性 | 默认 | 描述 |
---|---|---|
allow-non-standard-wrappers | false | 是否可以使用不扩展标准打包程序类的请求和响应封装器。 |
default-buffer-cache | default | 用于缓存静态资源的缓冲区缓存。 |
default-cookie-version | 0 | 用于应用创建的 Cookie 的默认 cookie 版本。 |
default-encoding | 用于所有已部署应用的默认编码。 | |
default-session-timeout | 30 | 容器中部署的所有应用的默认会话超时时间(以分钟为单位)。 |
directory-listing | 如果应该为默认 servlet 启用目录列表: | |
disable-caching-for-secured-pages | true | 是否为受保护的 paged 设置标头来禁用缓存。禁用此功能可能会导致安全问题,因为敏感页面可以被中间人缓存。 |
disable-file-watch-service | false |
如果设为 |
disable-session-id-reuse | false |
如果设为 |
eager-filter-initialization | false | 是否在部署时调用过滤器 init(),而不是在第一次请求时调用。 |
ignore-flush | false | 忽略 servlet 输出流上的刷新。在大多数情况下,这些都毫无理由影响性能。 |
max-sessions | 一次可以处于活跃状态的会话数量上限。 | |
主动验证 | true |
是否应该使用主动身份验证。如果这是 |
session-id-length | 30 | 会话 ID 越长,安全性越高。此值指定生成的会话 ID 的长度,以字节为单位。系统将生成的会话 ID 编码为 Base64 字符串,并将结果作为会话 ID Cookie 提供给客户端。由于此处理,服务器向客户端发送一个 Cookie 值,比原先生成的会话 ID 大约为 33%。例如,会话 ID 长度为 30 时,cookie 值长度为 40。 |
stack-trace-on-error | local-only |
如果错误时应生成带有堆栈 trace 的错误页面。值是 |
use-listener-encoding | false | 使用侦听器中定义的编码。 |
miME-mapping Attributes
属性 | 默认 | 描述 |
---|---|---|
value | 此映射的 mime 类型。 |
crawler-session-management Attributes
为爬虫 bots 配置特殊会话处理。
在使用管理 CLI 管理 crawler-session-management
元素时,它位于 servlet-container
元素 的设置
下。例如:
/subsystem=undertow/servlet-container=default/setting=crawler-session-management:add /subsystem=undertow/servlet-container=default/setting=crawler-session-management:read-resource
属性 | 默认 | 描述 |
---|---|---|
session-timeout | 由 crawlers 拥有的会话的会话超时(以秒为单位)。 | |
user-agents | 用于匹配爬虫的用户代理的正则表达式。 |
JSP 属性
在使用管理 CLI 管理 jsp
元素时,它位于 servlet-container
元素 的设置
下。例如:
/subsystem=undertow/servlet-container=default/setting=jsp:read-resource
属性 | 默认 | 描述 |
---|---|---|
check-interval | 0 | 使用后台线程检查 JSP 更新的间隔。这不适用于大多数使用文件系统通知 API 处理 JSP 更改通知的部署。这只有在文件 watch 服务被禁用时才生效。 |
开发 | false | 启用允许即时重新加载 JSP 的开发模式。 |
disabled | false | 启用 JSP 容器。 |
display-source-fragment | true | 发生运行时错误时,尝试显示对应的 JSP 源片段。 |
dump-smap | false | 将 SMAP 数据写入文件. |
error-on-use-bean-invalid-class-attribute | false | 在 useBean 中使用错误类时启用错误。 |
generate-strings-as-char-arrays | false | 生成字符串常量作为 char 数组。 |
java-encoding | UTF8 | 指定用于 Java 源的编码。 |
keep-generated | true | 保留生成的 servlet。 |
mapping-file | true | 映射到 JSP 源. |
modification-test-interval | 4 | 两次测试用于更新的最短时间,以秒为单位。 |
optimize-scriptlets | false | 如果 JSP 脚本let 应该被优化来删除字符串串联。 |
recompile-on-fail | false | 对每个请求重试失败的 JSP 编译。 |
scratch-dir | 指定其他工作目录。 | |
SMAP | true | 启用 SMAP. |
source-vm | 1.8 | 用于编译的源虚拟机级别. |
tag-pooling | true | 启用标签池。 |
target-vm | 1.8 | 用于编译的目标虚拟机级别. |
trim-spaces | false | 从生成的 servlet 中修剪一些空格。 |
x-powered-by | true | 启用 x 驱动型 JSP 引擎的广告。 |
persistent-sessions 属性
在使用管理 CLI 管理 persistent-sessions
元素时,它位于 servlet-container
元素 的设置
下。例如:
/subsystem=undertow/servlet-container=default/setting=persistent-sessions:add /subsystem=undertow/servlet-container=default/setting=persistent-sessions:read-resource
属性 | 默认 | 描述 |
---|---|---|
路径 | 持久会话数据目录的路径。如果为空,会话将存储在内存中。 | |
relative-to | 路径相对于的目录。 |
session-cookie 属性
在使用管理 CLI 管理 session-cookie
元素时,它位于 servlet-container
元素 的设置
下。例如:
/subsystem=undertow/servlet-container=default/setting=session-cookie:add /subsystem=undertow/servlet-container=default/setting=session-cookie:read-resource
属性 | 默认 | 描述 |
---|---|---|
注释 | Cookie 注释. | |
domain | Cookie 域. | |
http-only | Cookie 是否仅 http . | |
max-age | Cookie 最长期限. | |
name | Cookie 的名称。 | |
安全 | Cookie 是否安全。 |
Websockets 属性
在使用管理 CLI 管理 websockets
元素时,它位于 servlet-container
元素 的设置
下。例如:
/subsystem=undertow/servlet-container=default/setting=websockets:read-resource
属性 | 默认 | 描述 |
---|---|---|
buffer-pool | default | 用于 websocket 部署的缓冲区池。 |
deflater-level | 0 | 配置 DEFLATE 算法的压缩级别。 |
dispatch-to-worker | true |
回调是否应该分配给 worker 线程。如果这为 |
per-message-deflate | false | 启用 websocket 按消息压缩扩展。 |
worker | default | 用于 websocket 部署的 worker。 |
welcome-file 属性
定义一个欢迎文件,并且没有选项。
过滤属性
这些组件可以在 /subsystem=undertow/configuration=filter
找到。
custom-filter 过滤器
属性 | 默认 | 描述 |
---|---|---|
class-name | HttpHandler 类名称. | |
module | 从其中加载类的模块名称。 | |
parameters | 过滤参数. |
错误页面过滤器
错误页面
属性 | 默认 | 描述 |
---|---|---|
Code | 错误页面代码. | |
路径 | 错误页面路径. |
expression-filter 过滤器
从 Undertow 表达式语言解析的过滤器。
属性 | 默认 | 描述 |
---|---|---|
expression | 定义过滤器的表达式。 | |
module | 用于加载过滤器定义的模块。 |
gzip 过滤器
定义 gzip 过滤器,并且没有属性。
MoD-cluster 过滤器
mod-cluster 过滤器组件具有以下结构:
属性 | 默认 | 描述 |
---|---|---|
advertise-frequency | 10000 | mod_cluster 在网络上公告自身的频率(以毫秒为单位)。 |
advertise-path | / | mod_cluster 注册的路径。 |
advertise-protocol | http | 正在使用的协议。 |
advertise-socket-binding | 用于公告的多播组。 | |
break-node-timeout | 60000 | 从表中删除中断的节点前必须等待的时间。 |
cached-connections-per-thread | 5 | 无限期保留的连接数。 |
connection-idle-timeout | 60 |
连接在关闭前可以闲置的时间。池大小到配置的最小值后,连接不会超时,这由 cached |
connections-per-thread | 10 | 每个 IO 线程将维护到后端服务器的连接数量。 |
enable-http2 | false | 负载均衡器是否应该尝试将后端连接升级到 HTTP/2。如果不支持 HTTP/2,则将正常使用 HTTP 或 HTTPS。 |
failover-strategy | LOAD_BALANCED | 确定如何在会话的节点不可用时选择故障切换节点的属性。 |
health-check-interval | 10000 | 对后端节点进行健康检查的频率。 |
http2-enable-push | true | 是否应该为 HTTP/2 连接启用 push。 |
http2-header-table-size | 4096 | 用于 HPACK 压缩的标头表大小,以字节为单位。此内存量将分配给每个连接以进行压缩。较大的值使用更多内存,但可能会提供更好的压缩。 |
http2-initial-window-size | 65535 | 流控制窗口大小(以字节为单位),它控制客户端向服务器发送数据的速度。 |
http2-max-concurrent-streams | 在单个连接上随时处于活跃状态的 HTTP/2 流的最大数量。 | |
http2-max-frame-size | 16384 | 最大 HTTP/2 帧大小,以字节为单位。 |
http2-max-header-list-size | 服务器准备接受的请求标头的最大大小,以字节为单位。 | |
management-access-predicate |
应用到传入请求的 predicate,以确定它们是否可以执行 mod 集群管理命令。通过将管理限制为源自 management- | |
management-socket-binding | mod_cluster 管理端口的套接字绑定。使用 mod_cluster 时应定义两个 HTTP 侦听器,一个用于处理请求,另一个则绑定到内部网络来处理群集命令。此套接字绑定应当与内部监听器对应,并且不应公开访问。 | |
max-ajp-packet-size | 8192 | AJP 数据包的最大大小,以字节为单位。增加此设置可让 AJP 处理具有大量标头的请求和响应。这在负载均衡器和后端服务器之间必须相同。 |
max-request-time | -1 | 向后端节点的请求在终止前可以等待的最长时间。 |
max-retries | 1 | 如果请求失败,则尝试重试请求的次数。 注意 如果请求不被视为幂等,则只有在代理可以确定它没有发送到后端服务器时,才会重试请求。 |
request-queue-size | 10 | 如果在请求被拒绝 503 之前连接池已满,可以排队的请求数。 |
security-key | 用于 mod_cluster 组的安全键。所有成员必须使用相同的安全密钥。 | |
security-realm |
提供 SSL 配置的安全域。弃用: | |
ssl-context |
对过滤器使用的 | |
use-alias | false | 是否执行别名检查。 |
worker | default | 用于发送公告通知的 XNIO 工作程序。 |
属性 | 默认 | 描述 |
---|---|---|
max-attempts | 将请求发送到后端服务器的尝试数量。 | |
sticky-session | 如果启用了粘性会话. | |
sticky-session-cookie | 会话 Cookie 名称。 | |
sticky-session-force |
如果为 | |
sticky-session-path | 粘性会话 Cookie 的路径。 | |
sticky-session-remove | 如果请求无法路由到正确的主机,则删除会话 Cookie。 | |
wait-worker | 等待可用 worker 的秒数。 |
load-balancing-group Attributes
定义负载平衡组,无选项。
属性 | 默认 | 描述 |
---|---|---|
Alias | 节点别名。 | |
cache-connections | 无限期保持活动的连接数。 | |
已选择 | 已选定计数。 | |
flush-packets | 如果收到数据,应立即清空。 | |
load | 此节点的当前负载。 | |
load-balancing-group | 此节点所属的负载平衡组。 | |
max-connections | 每个 IO 线程的最大连接数。 | |
open-connections | 当前打开的连接数。 | |
ping | 节点 ping。 | |
queue-new-requests | 如果收到请求,并且没有 worker 立即可用(如果它排队)。 | |
读取 | 从节点读取的字节数。 | |
request-queue-size | 请求队列的大小。 | |
status | 此节点的当前状态。 | |
timeout | 请求超时。 | |
ttl |
如果连接的数量大于 | |
uri | 负载平衡器用于连接节点的 URI。 | |
written | 传输到节点的字节数。 |
属性 | 默认 | 描述 |
---|---|---|
requests | 针对此上下文的请求数。 | |
status | 此上下文的状态。 |
request-limit Filters
属性 | 默认 | 描述 |
---|---|---|
max-concurrent-requests | 并发请求的最大数量. | |
queue-size | 在队列开始被拒绝前的请求数。 |
response-header Filters
通过响应标头过滤器,您可以添加自定义标头。
属性 | 默认 | 描述 |
---|---|---|
header-name | 标头名称。 | |
header-value | 标头值。 |
重写过滤器
属性 | 默认 | 描述 |
---|---|---|
重定向 | false | 是否要进行重定向而不是重写. |
目标 | 定义目标的表达式。如果您要重定向到固定目标,请在值旁边放置单引号。 |
处理程序属性
这些组件可以在 /subsystem=undertow/configuration=handler
找到。
文件属性
属性 | 默认 | 描述 |
---|---|---|
cache-buffer-size | 1024 | 缓冲区的大小. |
cache-buffers | 1024 | 缓冲区数量. |
case-sensitive | true |
是否使用区分大小写的文件处理.请注意,仅当底层文件系统不区分大小写时,此选项 |
directory-listing | false | 是否启用目录列表. |
follow-symlink | false | 是否启用以下符号链接: |
路径 | 文件处理程序将提供资源的文件系统中的路径。 | |
safe-symlink-paths | 符号链接目标安全的路径. |
将 WebDAV 用于静态资源
早期版本的 JBoss EAP 允许通过 Web davServlet 将
子系统搭配使用,以托管静态资源,并且启用额外的 HTTP 方法来访问和操作这些文件。在 JBoss EAP 7 中,Web
DAV 与 Webundertow
子系统提供了使用文件处理程序提供静态文件的机制,但 undertow
子系统不支持 WebDAV。如果要将 WebDAV 与 JBoss EAP 7 搭配使用,您可以编写自定义 WebDAVservlet。
reverse-proxy 属性
reverse-proxy 处理器组件具有以下结构:
属性 | 默认 | 描述 |
---|---|---|
cached-connections-per-thread | 5 | 无限期保留的连接数。 |
connection-idle-timeout | 60 | 连接在关闭前可以闲置的时间。当池大小到配置的最小值(如 cached-connections-per-thread 配置)后,连接不会超时。 |
connections-per-thread | 40 | 每个 IO 线程将维护到后端服务器的连接数量。 |
max-request-time | -1 | 代理请求在被终止前可以激活的最长时间。默认值为无限。 |
max-retries | 1 | 如果请求失败,则尝试重试请求的次数。 注意 如果请求不被视为幂等,则只有在代理可以确定它没有发送到后端服务器时,才会重试请求。 |
problem-server-retry | 30 | 尝试重新连接到停机的服务器前等待的时间(以秒为单位)。 |
request-queue-size | 10 | 如果在请求被拒绝 503 之前连接池已满,可以排队的请求数。 |
session-cookie-names | JSESSIONID | 会话 Cookie 名称的逗号分隔列表。通常这仅仅是 JSESSIONID。 |
属性 | 默认 | 描述 |
---|---|---|
enable-http2 | false |
如果为 |
instance-id | 用于启用粘性会话的实例 ID 或 JVM 路由。 | |
outbound-socket-binding | 此主机的出站套接字绑定. | |
路径 | / | 如果主机使用非 root 资源,则可选路径。 |
scheme | http | 使用的方案类型。 |
security-realm | 为主机连接提供 SSL 配置的安全域。 | |
ssl-context | 引用此处理程序要使用的 SSLContext。 |
服务器属性
服务器组件有以下结构:
服务器属性
属性 | 默认 | 描述 |
---|---|---|
default-host | default-host | 服务器的默认虚拟主机. |
servlet-container | default | 服务器的默认 servlet 容器。 |
ajP-listener Attributes
属性 | 默认 | 描述 |
---|---|---|
allow-encoded-slash | false |
如果请求附带编码的字符,如 |
allow-equals-in-cookie-value | false | 是否允许非转义的 cookie 值中的字符等于字符。未引用的 Cookie 值可能不包含等同字符。如果值在等号之前结束。Cookie 值的其余部分将被丢弃。 |
allow-unescaped-characters-in-url | false |
是否允许 URL 中的非转义字符。如果设置为 |
always-set-keep-alive | true | 是否会在响应中添加 Connection: keep-alive 标头,即使该规范没有严格要求。 |
buffer-pipelined-data | false | 是否缓冲管道请求。 |
buffer-pool | default | AJP 侦听器的缓冲区池. |
decode-url | true |
如果这是 |
disallowed-methods | ["TRACE"] | 不允许的 HTTP 方法的逗号分隔列表。 |
enabled | true | 如果启用了监听程序。弃用:启用的属性可能会导致实施配置一致性出现问题。 |
max-ajp-packet-size | 8192 | AJP 数据包支持的最大值。如果修改了这个值,它会在负载均衡器和后端服务器上增加。 |
max-buffered-request-size | 16384 | 缓冲请求的最大大小(以字节请求为单位)通常不会被缓冲,最常见的情况是在对 POST 请求执行 SSL 重新协商时,并且必须完全缓冲后数据才能执行重新协商。 |
max-connections |
并发连接的最大数量。如果没有在服务器配置中设置值,则并发连接数的限制为 | |
max-cookies | 200 | 要解析的最大 Cookie 数。这用于防止哈希漏洞。 |
max-header-size | 1048576 | HTTP 请求标头的最大字节大小。 |
max-headers | 200 | 要解析的最大标头数。这用于防止哈希漏洞。 |
max-parameters | 1000 | 要解析的参数的最大数量。这用于防止哈希漏洞。这适用于查询参数和 POST 数据,但不适用于累积数据。例如,您可以具有 max 参数 * 2 个总参数。 |
max-post-size | 10485760 | 将接受的 post 的最大大小 |
no-request-timeout | 60000 | 容器关闭连接前可以闲置的时长,以毫秒为单位。 |
read-timeout |
配置套接字的读取超时,以毫秒为单位。如果给定的时间没有成功读取,则套接字的下一个读取将引发 | |
receive-buffer | 接收缓冲区的大小。 | |
record-request-start-time | false | 是否记录请求的开始时间,以允许记录请求时间。这会对性能产生轻微但可观的影响。 |
redirect-socket | 如果此侦听器支持非 SSL 请求,并且收到匹配项需要 SSL 传输的请求,则是否自动将请求重定向到此处指定的套接字绑定端口。 | |
request-parse-timeout | 解析请求的最长时间,以毫秒为单位。 | |
resolve-peer-address | false | 启用主机 DNS 查找。 |
scheme | 侦听器方案可以是 HTTP 或 HTTPS。默认情况下,方案将从传入的 AJP 请求中获取。 | |
安全 | false |
如果 |
send-buffer | 发送缓冲区大小。 | |
socket-binding | AJP 侦听器的套接字绑定. | |
tcp-backlog | 配置具有指定积压的服务器. | |
tcp-keep-alive | 将通道配置为以依赖实现的方式发送 TCP keep-alive 消息。 | |
url-charset | UTF-8 | URL charset. |
worker | default | 侦听器的 XNIO 工作程序. |
write-timeout |
为套接字配置写入超时,以毫秒为单位。如果给定的时间没有成功写入,则套接字的下一次写入将引发 |
主机属性
属性 | 默认 | 描述 |
---|---|---|
Alias | 以逗号分隔的主机别名列表。 | |
default-response-code | 404 | 如果设置,这是在服务器上不存在请求的上下文时发回的响应代码。 |
default-web-module | ROOT.war | 默认 Web 模块. |
disable-console-redirect | false |
如果设为 |
queue-requests-on-start | true |
如果设为 |
filter-ref Attributes
属性 | 默认 | 描述 |
---|---|---|
predicate | predicates 提供了一种基于交换做出正确/假决策的简单方法。许多处理程序都要求有条件地应用它们,谓词则提供指定条件的一般方式。 | |
priority | 1 |
定义过滤顺序。较低数字指示服务器早期包含在处理程序链中,而与其他上下文上方的其他链相比。值范围为 |
位置属性
属性 | 默认 | 描述 |
---|---|---|
handler | 此位置的默认处理程序. |
filter-ref Attributes
属性 | 默认 | 描述 |
---|---|---|
predicate | predicates 提供了一种基于交换做出正确/假决策的简单方法。许多处理程序都要求有条件地应用它们,谓词则提供指定条件的一般方式。 | |
priority | 1 | 定义过滤顺序。它应设置为 1 或更多。较高的数字指示服务器早于同一上下文下的其他链包含在处理程序链中。 |
access-log 属性
在使用管理 CLI 管理 access-log
元素时,它位于 主机
元素的 设置
下。例如:
/subsystem=undertow/server=default-server/host=default-host/setting=access-log:add /subsystem=undertow/server=default-server/host=default-host/setting=access-log:read-resource
属性 | 默认 | 描述 |
---|---|---|
目录 | ${jboss.server.log.dir} | 要保存日志的目录。 |
Extended | false | 日志是否使用扩展日志文件格式。 |
pattern | common | 访问日志模式。如需有关可用于此属性的选项的详细信息,请参阅 JBoss EAP 开发指南中的提供 Undertow 处理程序。 注意
如果您将 /subsystem=undertow/server=default-server/http-listener=default:write-attribute(name=record-request-start-time,value=true) |
predicate | 确定是否应记录请求的 predicate。 | |
prefix | access_log. | 日志文件名称的前缀。 |
relative-to | 路径相对于的目录。 | |
rotate | true | 是否每天轮转访问日志。 |
suffix | log | 日志文件名称的后缀。 |
use-server-log | false | 日志是否应写入到服务器日志,而不是单独的 文件。 |
worker | default | 用于日志记录的 worker 的名称。 |
console-access-log 属性
属性 | 默认 | 描述 |
---|---|---|
属性 | {remote-host={},remote-user={},date-time={},request-line={},response-code={},bytes-sent={}} | 指定要包含在控制台访问日志输出中的日志数据,或自定义默认数据。 |
include-host-name | false |
指定是否将主机名包含在 JSON 结构化输出中。如果设置为 |
metadata | 指定要包含在控制台访问日志输出中的自定义元数据。 | |
predicate | 确定是否应记录请求的 predicate。 | |
worker | default | 用于日志记录的 worker 的名称。 |
HTTP-invoker Attributes
属性 | 默认 | 描述 |
---|---|---|
http-authentication-factory | 用于身份验证的 HTTP 身份验证工厂。 | |
路径 | wildfly-services | 安装服务的路径。 |
security-realm | 用于身份验证的传统安全域。 |
单点登录属性
在使用管理 CLI 管理 单点登录元素时
,它位于 主机
元素的 设置
下。例如:
/subsystem=undertow/server=default-server/host=default-host/setting=single-sign-on:add /subsystem=undertow/server=default-server/host=default-host/setting=single-sign-on:read-resource
虽然分布式单点登录与应用透视图不同于先前版本的 JBoss EAP,但在 JBoss EAP 7 中,身份验证信息的缓存和发布将有所不同。对于 JBoss EAP 7,运行 ha 配置文件时,默认情况下,每一主机都有自己的 Infinispan 缓存,它将存储相关的会话和 SSO Cookie 信息。此缓存基于 Web 缓存容器的默认缓存。JBoss EAP 还将处理在所有主机的单个缓存之间传播的信息。
属性 | 默认 | 描述 |
---|---|---|
cookie-name | JSESSIONIDSSO | Cookie 的名称。 |
domain | 将使用的 Cookie 域。 | |
http-only | false | 设置 Cookie httpOnly 属性. |
路径 | / | Cookie 路径. |
安全 | false | 设置 Cookie 安全属性. |
HTTP-listener Attributes
属性 | 默认 | 描述 |
---|---|---|
allow-encoded-slash | false |
如果请求附带编码的字符,如 |
allow-equals-in-cookie-value | false | 是否允许非转义的 cookie 值中的字符等于字符。未引用的 Cookie 值可能不包含等同字符。如果值在等号之前结束。Cookie 值的其余部分将被丢弃。 |
allow-unescaped-characters-in-url | false |
是否允许 URL 中的非转义字符。如果设置为 |
always-set-keep-alive | true | 是否会在响应中添加 Connection: keep-alive 标头,即使该规范没有严格要求。 |
buffer-pipelined-data | false | 是否缓冲管道请求。 |
buffer-pool | default | 侦听器的缓冲区池。 |
certificate-forwarding | false |
是否启用证书转发。如果启用此项,侦听器将从 |
decode-url | true | 解析器是否使用选定的字符编码解码 URL 和查询参数,默认为 UTF-8。如果这是误,则不会解码。这将允许后续处理程序将它们解码到所需的任何 charset 中。 |
disallowed-methods | ["TRACE"] | 不允许的 HTTP 方法的逗号分隔列表。 |
enable-http2 | false | 是否为此侦听器启用 HTTP/2 支持。 |
enabled | true | 是否启用监听器。弃用:启用的属性可能会导致实施配置一致性出现问题。 |
http2-enable-push | true | 是否为此连接启用了服务器推送。 |
http2-header-table-size | 4096 | 用于 HPACK 压缩的标头表的大小(以字节为单位)。此内存量将分配给每个连接以进行压缩。较大的值使用更多内存,但可能会提供更好的压缩。 |
http2-initial-window-size | 65535 | 流控制窗口大小(以字节为单位),它控制客户端向服务器发送数据的速度。 |
http2-max-concurrent-streams | 在单个连接上随时处于活跃状态的 HTTP/2 流的最大数量。 | |
http2-max-frame-size | 16384 | 最大 HTTP/2 帧大小,以字节为单位。 |
http2-max-header-list-size | 服务器准备接受的最大请求标头大小。 | |
max-buffered-request-size | 16384 | 缓冲请求的最大大小(以字节请求为单位)通常不会被缓冲,最常见的情况是在对 POST 请求执行 SSL 重新协商时,并且必须完全缓冲后数据才能执行重新协商。 |
max-connections |
并发连接的最大数量。如果没有在服务器配置中设置值,则并发连接数的限制为 | |
max-cookies | 200 | 要解析的最大 Cookie 数。这用于防止哈希漏洞。 |
max-header-size | 1048576 | HTTP 请求标头的最大字节大小。 |
max-headers | 200 | 要解析的最大标头数。这用于防止哈希漏洞。 |
max-parameters | 1000 | 要解析的参数的最大数量。这用于防止哈希漏洞。这适用于查询参数和 POST 数据,但不适用于累积数据。例如,您可以具有 max 参数 * 2 个总参数。 |
max-post-size | 10485760 | 将接受的 post 的最大大小。 |
no-request-timeout | 60000 | 容器关闭连接前可以闲置的时长,以毫秒为单位。 |
proxy-address-forwarding | false | 是否启用 x-forwarded-host 和类似的标头,并设置远程 IP 地址和主机名。 |
proxy-protocol | false |
是否使用 PROXY 协议传输连接信息。如果设置为 |
read-timeout |
配置套接字的读取超时,以毫秒为单位。如果给定的时间没有成功读取,则套接字的下一个读取将引发 | |
receive-buffer | 接收缓冲区的大小。 | |
record-request-start-time | false | 是否记录请求的开始时间,以允许记录请求时间。这会对性能产生轻微但可观的影响。 |
redirect-socket | 如果此侦听器支持非 SSL 请求,并且收到匹配项需要 SSL 传输的请求,则是否自动将请求重定向到此处指定的套接字绑定端口。 | |
request-parse-timeout | 解析请求的最长时间,以毫秒为单位。 | |
require-host-http11 | false |
它要求所有 HTTP/1.1 请求都有一个 |
resolve-peer-address | false | 启用主机 DNS 查找。 |
安全 | false |
如果 |
send-buffer | 发送缓冲区大小。 | |
socket-binding | 侦听器的套接字绑定 | |
tcp-backlog | 配置具有指定积压的服务器. | |
tcp-keep-alive | 将通道配置为以依赖实现的方式发送 TCP keep-alive 消息。 | |
url-charset | UTF-8 | URL charset. |
worker | default | 侦听器的 XNIO 工作程序. |
write-timeout |
为套接字配置写入超时,以毫秒为单位。如果给定的时间没有成功写入,则套接字的下一次写入将引发 |
https-listener Attributes
属性 | 默认 | 描述 |
---|---|---|
allow-encoded-slash | false |
如果请求附带编码的字符,如 |
allow-equals-in-cookie-value | false | 是否允许非转义的 cookie 值中的字符等于字符。未引用的 Cookie 值可能不包含等同字符。如果值在等号之前结束。Cookie 值的其余部分将被丢弃。 |
allow-unescaped-characters-in-url | false |
是否允许 URL 中的非转义字符。如果设置为 |
always-set-keep-alive | true | 是否会在响应中添加 Connection: keep-alive 标头,即使该规范没有严格要求。 |
buffer-pipelined-data | false | 是否缓冲管道请求。 |
buffer-pool | default | 侦听器的缓冲区池。 |
certificate-forwarding | false |
是否启用证书转发。如果启用此项,侦听器将从 |
decode-url | true | 解析器是否使用选定的字符编码解码 URL 和查询参数,默认为 UTF-8。如果这是误,则不会解码。这将允许后续处理程序将它们解码到所需的任何 charset 中。 |
disallowed-methods | ["TRACE"] | 不允许的 HTTP 方法的逗号分隔列表。 |
enable-http2 | false | 启用对此监听器的 HTTP/2 支持。 |
enable-spdy | false | 启用对此监听器的 SPDY 支持。弃用:SPDY 已被 HTTP/2 替代。 |
enabled | true | 如果启用了监听程序。弃用:启用的属性可能会导致实施配置一致性出现问题。 |
enabled-cipher-suites | 配置已启用的 SSL 密码.弃用:引用 SSLContext 的位置,应使用要支持的加密套件进行配置。 | |
enabled-protocols | 配置 SSL 协议.弃用:引用 SSLContext 的位置,应使用要支持的加密套件进行配置。 | |
http2-enable-push | true | 如果为此连接启用了服务器推送。 |
http2-header-table-size | 4096 | 用于 HPACK 压缩的标头表的大小(以字节为单位)。此内存量将分配给每个连接以进行压缩。较大的值使用更多内存,但可能会提供更好的压缩。 |
http2-initial-window-size | 65535 | 流控制窗口大小(以字节为单位),它控制客户端向服务器发送数据的速度。 |
http2-max-concurrent-streams | 在单个连接上随时处于活跃状态的 HTTP/2 流的最大数量。 | |
http2-max-frame-size | 16384 | 最大 HTTP/2 帧大小,以字节为单位。 |
http2-max-header-list-size | 服务器准备接受的最大请求标头大小。 | |
max-buffered-request-size | 16384 | 缓冲请求的最大大小(以字节请求为单位)通常不会被缓冲,最常见的情况是在对 POST 请求执行 SSL 重新协商时,并且必须完全缓冲后数据才能执行重新协商。 |
max-connections |
并发连接的最大数量。如果没有在服务器配置中设置值,则并发连接数的限制为 | |
max-cookies | 100 | 要解析的最大 Cookie 数。这用于防止哈希漏洞。 |
max-header-size | 1048576 | HTTP 请求标头的最大字节大小。 |
max-headers | 200 | 要解析的最大标头数。这用于防止哈希漏洞。 |
max-parameters | 1000 | 要解析的参数的最大数量。这用于防止哈希漏洞。这适用于查询参数和 POST 数据,但不适用于累积数据。例如,您可以具有 max 参数 * 2 个总参数。 |
max-post-size | 10485760 | 将接受的 post 的最大大小。 |
no-request-timeout | 60000 | 容器关闭连接前可以闲置的时长,以毫秒为单位。 |
proxy-address-forwarding | false | 启用处理 x-forwarded-host 标头和其他 x-forwarded-* 标头,并使用此标头信息设置远程地址。这应该只在设置这些标头的可信代理后面使用,否则远程用户可能会欺骗其 IP 地址。 |
proxy-protocol | false |
是否使用 PROXY 协议传输连接信息。如果设置为 |
read-timeout |
配置套接字的读取超时,以毫秒为单位。如果给定的时间没有成功读取,则套接字的下一个读取将引发 | |
receive-buffer | 接收缓冲区的大小。 | |
record-request-start-time | false | 是否记录请求的开始时间,以允许记录请求时间。这会对性能产生轻微但可观的影响。 |
request-parse-timeout | 解析请求的最长时间,以毫秒为单位。 | |
require-host-http11 | false | 要求所有 HTTP/1.1 请求都具有 'Host' 标头。如果请求不包含此标头,它将使用 403 拒绝。 |
resolve-peer-address | false | 启用主机 DNS 查找。 |
安全 | false |
如果 |
security-realm |
侦听器的安全域.弃用: | |
send-buffer | 发送缓冲区大小。 | |
socket-binding | 侦听器的套接字绑定. | |
ssl-context | 引用此侦听器要使用的 SSLContext。 | |
ssl-session-cache-size | 活跃 SSL 会话的最大数量.弃用:现在可在 Elytron 安全上下文中配置。 | |
ssl-session-timeout | SSL 会话的超时时间,以秒为单位。弃用:现在可在 Elytron 安全上下文中配置。 | |
tcp-backlog | 配置具有指定积压的服务器. | |
tcp-keep-alive | 将通道配置为以依赖实现的方式发送 TCP keep-alive 消息。 | |
url-charset | UTF-8 | URL charset. |
verify-client | NOT_REQUESTED | SSL 频道所需的 SSL 客户端身份验证模式.弃用:在引用 SSLContext 时,应当直接为客户端验证模式配置它。 |
worker | default | 侦听器的 XNIO 工作程序. |
write-timeout |
为套接字配置写入超时,以毫秒为单位。如果给定的时间没有成功写入,则套接字的下一次写入将引发 |