TsgcHTTPServer › 属性

TsgcHTTPServer Properties

按用途分组的已发布属性,以及完整的字母排序列表。

连接

名称描述
Active启动或停止 HTTP 服务器,在配置的绑定上打开侦听套接字。
Port服务器接受传入 HTTP 连接的 TCP 端口。
Bindings服务器监听的 IP/端口对集合;使用它可同时绑定多个端点。
MaxConnections服务器可接受的最大并发客户端连接数。
KeepAlive在发送响应后保持 HTTP 连接打开,以便后续请求可以复用该连接。

HTTP

名称描述
Charset应用于从 DocumentRoot 提供的文本响应的字符集。
DocumentRootHTTP 服务器用于提供静态文件(HTML、JavaScript、CSS、图像等)的目录。
HTTP2Options启用并调整用于服务 HTTPS 请求的 HTTP/2 协议处理程序。
HTTP3Options启用 HTTP/3(QUIC)监听器,使其与 HTTP/1.1 和 HTTP/2 并行通过 UDP 处理 HTTP 请求。
HTTPCompression当客户端声明支持时,使用 gzip 或 deflate 压缩 HTTP/1.1 响应。
HTTPUploadFiles控制通过 HTTP POST 上传的文件如何缓冲(内存或文件流)并保存到磁盘。
ParseParams将每个请求的查询字符串和 form-urlencoded 正文解析到 ARequestInfo.Params 中。

会话

名称描述
AutoStartSession当启用会话状态时,为每个传入请求自动创建新的 HTTP 会话。
SessionClass服务器用于创建新 HTTP 会话的类;将其设置为你自己的 TIdHTTPSession 派生类。
SessionList保存活动 HTTP 会话的列表;读取它以通过代码管理会话,或指派你自己的列表。
SessionState在无状态 HTTP 协议之上启用基于 Cookie 的 HTTP 会话跟踪。
SessionTimeOutHTTP 会话被视为过期并可被移除的空闲超时时间(毫秒)。

安全性

名称描述
Authentication启用并配置对传入 HTTP 连接的用户名/密码身份验证。
SSL在服务器上启用 TLS/SSL,使客户端可以使用 https:// 进行连接。
SSLOptions保存 TLS 监听器的证书路径、TLS 版本选择和 OpenSSL 调整选项。
SecurityOptions握手准入规则继承自共享服务器引擎;不适用于此组件(请参阅备注)。
MaxRequestBodySize入站 HTTP 请求体的最大字节大小;保护服务器免受内存耗尽攻击。
StrictRequestParsing拒绝请求走私攻击中使用的有歧义的 HTTP 请求,并应用更严格的分块编码验证。
APIKeyManager可选的 API 密钥管理器组件,用于在接受连接前验证传入的 API 密钥。

可靠性

名称描述
WatchDog在意外关闭或监听器故障后自动重启服务器。
FallBack继承自共享服务器引擎;不适用于此组件(请参阅备注)。
RateLimiter分配一个速率限制组件,按客户端或 IP 限制请求速率。
防火墙分配一个防火墙组件,按 IP、地区或自定义规则过滤传入连接。

高级

名称描述
选项捆绑各种服务器行为标志:超时、内置测试页面和 HTTP Server 标头。
IOHandlerOptions选择用于服务连接的 I/O 策略:每连接一线程、IOCP 或 EPOLL。
ThreadPool启用线程池,在连接关闭时回收工作线程而不是销毁它们。
ThreadPoolOptions配置启用 ThreadPool 时使用的可重用线程池的大小和上限。
限流限制服务器对每个连接读取或写入的带宽(位/秒)。

诊断

名称描述
LogFile将每个传入和传出的 HTTP 请求/响应写入日志文件,用于调试和审计。
NotifyEvents控制线程化的服务器事件如何与主 VCL 线程同步。
Version嵌入在二进制文件中的 sgcWebSockets 库版本的只读字符串。

所有属性(按字母排序)

名称描述
Active启动或停止 HTTP 服务器,在配置的绑定上打开侦听套接字。
APIKeyManager可选的 API 密钥管理器组件,用于在接受连接前验证传入的 API 密钥。
Authentication启用并配置对传入 HTTP 连接的用户名/密码身份验证。
AutoStartSession当启用会话状态时,为每个传入请求自动创建新的 HTTP 会话。
Bindings服务器监听的 IP/端口对集合;使用它可同时绑定多个端点。
Charset应用于从 DocumentRoot 提供的文本响应的字符集。
DocumentRootHTTP 服务器用于提供静态文件(HTML、JavaScript、CSS、图像等)的目录。
FallBack继承自共享服务器引擎;不适用于此组件(请参阅备注)。
防火墙分配一个防火墙组件,按 IP、地区或自定义规则过滤传入连接。
HTTP2Options启用并调整用于服务 HTTPS 请求的 HTTP/2 协议处理程序。
HTTP3Options启用 HTTP/3(QUIC)监听器,使其与 HTTP/1.1 和 HTTP/2 并行通过 UDP 处理 HTTP 请求。
HTTPCompression当客户端声明支持时,使用 gzip 或 deflate 压缩 HTTP/1.1 响应。
HTTPUploadFiles控制通过 HTTP POST 上传的文件如何缓冲(内存或文件流)并保存到磁盘。
IOHandlerOptions选择用于服务连接的 I/O 策略:每连接一线程、IOCP 或 EPOLL。
KeepAlive在发送响应后保持 HTTP 连接打开,以便后续请求可以复用该连接。
LogFile将每个传入和传出的 HTTP 请求/响应写入日志文件,用于调试和审计。
MaxConnections服务器可接受的最大并发客户端连接数。
MaxRequestBodySize入站 HTTP 请求体的最大字节大小;保护服务器免受内存耗尽攻击。
NotifyEvents控制线程化的服务器事件如何与主 VCL 线程同步。
选项捆绑各种服务器行为标志:超时、内置测试页面和 HTTP Server 标头。
ParseParams将每个请求的查询字符串和 form-urlencoded 正文解析到 ARequestInfo.Params 中。
Port服务器接受传入 HTTP 连接的 TCP 端口。
RateLimiter分配一个速率限制组件,按客户端或 IP 限制请求速率。
SecurityOptions握手准入规则继承自共享服务器引擎;不适用于此组件(请参阅备注)。
SessionClass服务器用于创建新 HTTP 会话的类;将其设置为你自己的 TIdHTTPSession 派生类。
SessionList保存活动 HTTP 会话的列表;读取它以通过代码管理会话,或指派你自己的列表。
SessionState在无状态 HTTP 协议之上启用基于 Cookie 的 HTTP 会话跟踪。
SessionTimeOutHTTP 会话被视为过期并可被移除的空闲超时时间(毫秒)。
SSL在服务器上启用 TLS/SSL,使客户端可以使用 https:// 进行连接。
SSLOptions保存 TLS 监听器的证书路径、TLS 版本选择和 OpenSSL 调整选项。
StrictRequestParsing拒绝请求走私攻击中使用的有歧义的 HTTP 请求,并应用更严格的分块编码验证。
ThreadPool启用线程池,在连接关闭时回收工作线程而不是销毁它们。
ThreadPoolOptions配置启用 ThreadPool 时使用的可重用线程池的大小和上限。
限流限制服务器对每个连接读取或写入的带宽(位/秒)。
Version嵌入在二进制文件中的 sgcWebSockets 库版本的只读字符串。
WatchDog在意外关闭或监听器故障后自动重启服务器。