TsgcHTTPServer › Properties

TsgcHTTPServer Properties

Published properties grouped by purpose, followed by the full alphabetical list.

Connection

NameDescription
ActiveStarts or stops the HTTP server, opening the listening sockets on the configured bindings.
PortTCP port on which the server accepts incoming HTTP connections.
BindingsCollection of IP/Port pairs the server listens on; use it to bind several endpoints simultaneously.
MaxConnectionsMaximum number of concurrent client connections accepted by the server.
KeepAliveKeeps the HTTP connection open after a response has been sent so that subsequent requests can reuse it.

HTTP

NameDescription
CharsetCharset applied to text responses served from DocumentRoot.
DocumentRootDirectory served by the HTTP server for static files (HTML, JavaScript, CSS, images, etc.).
HTTP2OptionsEnables and tunes the HTTP/2 protocol handler used to serve HTTPS requests.
HTTP3OptionsEnables the HTTP/3 (QUIC) listener that serves HTTP requests alongside HTTP/1.1 and HTTP/2, over UDP.
HTTPCompressionCompresses HTTP/1.1 responses with gzip or deflate when the client advertises support.
HTTPUploadFilesControls how files uploaded through HTTP POST are buffered (memory or file stream) and saved to disk.
ParseParamsParses the query string and form-urlencoded body of every request into ARequestInfo.Params.

Sessions

NameDescription
AutoStartSessionCreates a new HTTP session automatically for every incoming request when session state is enabled.
SessionClassClass used by the server to create new HTTP sessions; set it to your own TIdHTTPSession descendant.
SessionListList holding the active HTTP sessions; read it to manage sessions by code, or assign your own list.
SessionStateEnables cookie-based HTTP session tracking on top of the stateless HTTP protocol.
SessionTimeOutIdle timeout, in milliseconds, after which an HTTP session is considered expired and eligible for removal.

Security

NameDescription
AuthenticationEnables and configures user/password authentication for incoming HTTP connections.
SSLEnables TLS/SSL on the server so that clients can connect using https://.
SSLOptionsHolds certificate paths, TLS version selection and OpenSSL tuning for the TLS listener.
SecurityOptionsHandshake admission rules inherited from the shared server engine; not applicable to this component (see Remarks).
MaxRequestBodySizeMaximum size in bytes of an inbound HTTP request body; protects the server from memory-exhaustion attacks.
StrictRequestParsingRejects ambiguous HTTP requests used in request-smuggling attacks and applies stricter chunked-encoding validation.
APIKeyManagerOptional API-key manager component used to validate incoming API keys before accepting a connection.

Reliability

NameDescription
WatchDogAutomatically restarts the server after an unexpected shutdown or listener failure.
FallBackInherited from the shared server engine; not applicable to this component (see Remarks).
RateLimiterAssigns a rate-limiter component that caps request rates per client or per IP.
FirewallAssigns a firewall component that filters incoming connections by IP, region or custom rules.

Advanced

NameDescription
OptionsBundles miscellaneous server behaviour flags: timeouts, built-in test pages and the HTTP Server header.
IOHandlerOptionsSelects the I/O strategy used to service connections: thread-per-connection, IOCP or EPOLL.
ThreadPoolEnables a thread pool that recycles worker threads instead of destroying them when connections close.
ThreadPoolOptionsConfigures the size and upper bound of the reusable thread pool used when ThreadPool is enabled.
ThrottleCaps the bandwidth (bits per second) that the server reads from or writes to each connection.

Diagnostics

NameDescription
LogFileWrites every incoming and outgoing HTTP request/response to a log file for debugging and auditing.
NotifyEventsControls how threaded server events are synchronized with the main VCL thread.
VersionRead-only string with the sgcWebSockets library version embedded in the binary.

All Properties (alphabetical)

NameDescription
ActiveStarts or stops the HTTP server, opening the listening sockets on the configured bindings.
APIKeyManagerOptional API-key manager component used to validate incoming API keys before accepting a connection.
AuthenticationEnables and configures user/password authentication for incoming HTTP connections.
AutoStartSessionCreates a new HTTP session automatically for every incoming request when session state is enabled.
BindingsCollection of IP/Port pairs the server listens on; use it to bind several endpoints simultaneously.
CharsetCharset applied to text responses served from DocumentRoot.
DocumentRootDirectory served by the HTTP server for static files (HTML, JavaScript, CSS, images, etc.).
FallBackInherited from the shared server engine; not applicable to this component (see Remarks).
FirewallAssigns a firewall component that filters incoming connections by IP, region or custom rules.
HTTP2OptionsEnables and tunes the HTTP/2 protocol handler used to serve HTTPS requests.
HTTP3OptionsEnables the HTTP/3 (QUIC) listener that serves HTTP requests alongside HTTP/1.1 and HTTP/2, over UDP.
HTTPCompressionCompresses HTTP/1.1 responses with gzip or deflate when the client advertises support.
HTTPUploadFilesControls how files uploaded through HTTP POST are buffered (memory or file stream) and saved to disk.
IOHandlerOptionsSelects the I/O strategy used to service connections: thread-per-connection, IOCP or EPOLL.
KeepAliveKeeps the HTTP connection open after a response has been sent so that subsequent requests can reuse it.
LogFileWrites every incoming and outgoing HTTP request/response to a log file for debugging and auditing.
MaxConnectionsMaximum number of concurrent client connections accepted by the server.
MaxRequestBodySizeMaximum size in bytes of an inbound HTTP request body; protects the server from memory-exhaustion attacks.
NotifyEventsControls how threaded server events are synchronized with the main VCL thread.
OptionsBundles miscellaneous server behaviour flags: timeouts, built-in test pages and the HTTP Server header.
ParseParamsParses the query string and form-urlencoded body of every request into ARequestInfo.Params.
PortTCP port on which the server accepts incoming HTTP connections.
RateLimiterAssigns a rate-limiter component that caps request rates per client or per IP.
SecurityOptionsHandshake admission rules inherited from the shared server engine; not applicable to this component (see Remarks).
SessionClassClass used by the server to create new HTTP sessions; set it to your own TIdHTTPSession descendant.
SessionListList holding the active HTTP sessions; read it to manage sessions by code, or assign your own list.
SessionStateEnables cookie-based HTTP session tracking on top of the stateless HTTP protocol.
SessionTimeOutIdle timeout, in milliseconds, after which an HTTP session is considered expired and eligible for removal.
SSLEnables TLS/SSL on the server so that clients can connect using https://.
SSLOptionsHolds certificate paths, TLS version selection and OpenSSL tuning for the TLS listener.
StrictRequestParsingRejects ambiguous HTTP requests used in request-smuggling attacks and applies stricter chunked-encoding validation.
ThreadPoolEnables a thread pool that recycles worker threads instead of destroying them when connections close.
ThreadPoolOptionsConfigures the size and upper bound of the reusable thread pool used when ThreadPool is enabled.
ThrottleCaps the bandwidth (bits per second) that the server reads from or writes to each connection.
VersionRead-only string with the sgcWebSockets library version embedded in the binary.
WatchDogAutomatically restarts the server after an unexpected shutdown or listener failure.