TsgcHTTPServer › Właściwości

TsgcHTTPServer Właściwości

Opublikowane właściwości pogrupowane według przeznaczenia, a następnie pełna lista alfabetyczna.

Połączenie

NazwaOpis
ActiveUruchamia lub zatrzymuje serwer HTTP, otwierając gniazda nasłuchujące na skonfigurowanych powiązaniach.
PortPort TCP, na którym serwer przyjmuje przychodzące połączenia HTTP.
BindingsKolekcja par IP/Port, na których nasłuchuje serwer; umożliwia jednoczesne powiązanie kilku punktów końcowych.
MaxConnectionsMaksymalna liczba jednoczesnych połączeń klienta akceptowanych przez serwer.
KeepAliveUtrzymuje połączenie HTTP otwarte po wysłaniu odpowiedzi, aby kolejne żądania mogły je ponownie wykorzystać.

HTTP

NazwaOpis
CharsetZestaw znaków stosowany do odpowiedzi tekstowych serwowanych z DocumentRoot.
DocumentRootKatalog obsługiwany przez serwer HTTP dla plików statycznych (HTML, JavaScript, CSS, obrazy itp.).
HTTP2OptionsWłącza i konfiguruje moduł obsługi protokołu HTTP/2 używany do obsługi żądań HTTPS.
HTTP3OptionsWłącza nasłuch HTTP/3 (QUIC), który obsługuje żądania HTTP równolegle z HTTP/1.1 i HTTP/2, przez UDP.
HTTPCompressionKompresuje odpowiedzi HTTP/1.1 przy pomocy gzip lub deflate, gdy klient zgłasza obsługę.
HTTPUploadFilesKontroluje sposób buforowania (pamięć lub strumień plikowy) i zapisywania na dysku plików przesłanych przez HTTP POST.
ParseParamsAnalizuje ciąg zapytania oraz treść formularza (form-urlencoded) każdego żądania i zapisuje je w ARequestInfo.Params.

Sesje

NazwaOpis
AutoStartSessionAutomatycznie tworzy nową sesję HTTP dla każdego przychodzącego żądania, gdy włączony jest stan sesji.
SessionClassKlasa używana przez serwer do tworzenia nowych sesji HTTP; ustaw ją na własnego potomka TIdHTTPSession.
SessionListLista przechowująca aktywne sesje HTTP; odczytaj ją, aby zarządzać sesjami z poziomu kodu, albo przypisz własną listę.
SessionStateWłącza śledzenie sesji HTTP opartej na plikach cookie, ponad bezstanowym protokołem HTTP.
SessionTimeOutLimit czasu bezczynności w milisekundach, po upływie którego sesja HTTP jest uznawana za wygasłą i kwalifikuje się do usunięcia.

Bezpieczeństwo

NazwaOpis
AuthenticationWłącza i konfiguruje uwierzytelnianie użytkownik/hasło dla przychodzących połączeń HTTP.
SSLWłącza TLS/SSL na serwerze, aby klienci mogli łączyć się przy użyciu https://.
SSLOptionsPrzechowuje ścieżki certyfikatów, wybór wersji TLS oraz ustawienia OpenSSL dla nasłuchiwacza TLS.
SecurityOptionsReguły dopuszczania uzgadniania połączenia odziedziczone ze współdzielonego silnika serwera; nie mają zastosowania w tym komponencie (patrz Uwagi).
MaxRequestBodySizeMaksymalny rozmiar w bajtach przychodzącej treści żądania HTTP; chroni serwer przed atakami wyczerpującymi pamięć.
StrictRequestParsingOdrzuca niejednoznaczne żądania HTTP wykorzystywane w atakach typu request smuggling i stosuje bardziej rygorystyczną walidację kodowania chunked.
APIKeyManagerOpcjonalny komponent zarządzania kluczami API służący do weryfikacji przychodzących kluczy API przed akceptacją połączenia.

Niezawodność

NazwaOpis
WatchDogAutomatycznie restartuje serwer po nieoczekiwanym zamknięciu lub awarii nasłuchiwania.
FallBackOdziedziczone ze współdzielonego silnika serwera; nie ma zastosowania w tym komponencie (patrz Uwagi).
RateLimiterPrzypisuje komponent ogranicznika szybkości, który ogranicza częstotliwość żądań na klienta lub na adres IP.
FirewallPrzypisuje komponent zapory sieciowej filtrujący przychodzące połączenia według adresu IP, regionu lub reguł niestandardowych.

Zaawansowane

NazwaOpis
OptionsGrupuje różne flagi zachowania serwera: limity czasu, wbudowane strony testowe oraz nagłówek HTTP Server.
IOHandlerOptionsWybiera strategię wejścia/wyjścia używaną do obsługi połączeń: wątek na połączenie, IOCP lub EPOLL.
ThreadPoolWłącza pulę wątków, która ponownie wykorzystuje wątki robocze zamiast je niszczyć po zamknięciu połączeń.
ThreadPoolOptionsKonfiguruje rozmiar i górną granicę wielokrotnie używanej puli wątków, gdy włączona jest opcja ThreadPool.
ThrottleOgranicza przepustowość (bity na sekundę), jaką serwer odczytuje lub zapisuje dla każdego połączenia.

Diagnostyka

NazwaOpis
LogFileZapisuje każde przychodzące i wychodzące żądanie/odpowiedź HTTP do pliku dziennika na potrzeby debugowania i audytu.
NotifyEventsSteruje sposobem synchronizowania wielowątkowych zdarzeń serwera z głównym wątkiem VCL.
VersionCiąg znaków tylko do odczytu z wersją biblioteki sgcWebSockets osadzoną w pliku binarnym.

Wszystkie właściwości (alfabetycznie)

NazwaOpis
ActiveUruchamia lub zatrzymuje serwer HTTP, otwierając gniazda nasłuchujące na skonfigurowanych powiązaniach.
APIKeyManagerOpcjonalny komponent zarządzania kluczami API służący do weryfikacji przychodzących kluczy API przed akceptacją połączenia.
AuthenticationWłącza i konfiguruje uwierzytelnianie użytkownik/hasło dla przychodzących połączeń HTTP.
AutoStartSessionAutomatycznie tworzy nową sesję HTTP dla każdego przychodzącego żądania, gdy włączony jest stan sesji.
BindingsKolekcja par IP/Port, na których nasłuchuje serwer; umożliwia jednoczesne powiązanie kilku punktów końcowych.
CharsetZestaw znaków stosowany do odpowiedzi tekstowych serwowanych z DocumentRoot.
DocumentRootKatalog obsługiwany przez serwer HTTP dla plików statycznych (HTML, JavaScript, CSS, obrazy itp.).
FallBackOdziedziczone ze współdzielonego silnika serwera; nie ma zastosowania w tym komponencie (patrz Uwagi).
FirewallPrzypisuje komponent zapory sieciowej filtrujący przychodzące połączenia według adresu IP, regionu lub reguł niestandardowych.
HTTP2OptionsWłącza i konfiguruje moduł obsługi protokołu HTTP/2 używany do obsługi żądań HTTPS.
HTTP3OptionsWłącza nasłuch HTTP/3 (QUIC), który obsługuje żądania HTTP równolegle z HTTP/1.1 i HTTP/2, przez UDP.
HTTPCompressionKompresuje odpowiedzi HTTP/1.1 przy pomocy gzip lub deflate, gdy klient zgłasza obsługę.
HTTPUploadFilesKontroluje sposób buforowania (pamięć lub strumień plikowy) i zapisywania na dysku plików przesłanych przez HTTP POST.
IOHandlerOptionsWybiera strategię wejścia/wyjścia używaną do obsługi połączeń: wątek na połączenie, IOCP lub EPOLL.
KeepAliveUtrzymuje połączenie HTTP otwarte po wysłaniu odpowiedzi, aby kolejne żądania mogły je ponownie wykorzystać.
LogFileZapisuje każde przychodzące i wychodzące żądanie/odpowiedź HTTP do pliku dziennika na potrzeby debugowania i audytu.
MaxConnectionsMaksymalna liczba jednoczesnych połączeń klienta akceptowanych przez serwer.
MaxRequestBodySizeMaksymalny rozmiar w bajtach przychodzącej treści żądania HTTP; chroni serwer przed atakami wyczerpującymi pamięć.
NotifyEventsSteruje sposobem synchronizowania wielowątkowych zdarzeń serwera z głównym wątkiem VCL.
OptionsGrupuje różne flagi zachowania serwera: limity czasu, wbudowane strony testowe oraz nagłówek HTTP Server.
ParseParamsAnalizuje ciąg zapytania oraz treść formularza (form-urlencoded) każdego żądania i zapisuje je w ARequestInfo.Params.
PortPort TCP, na którym serwer przyjmuje przychodzące połączenia HTTP.
RateLimiterPrzypisuje komponent ogranicznika szybkości, który ogranicza częstotliwość żądań na klienta lub na adres IP.
SecurityOptionsReguły dopuszczania uzgadniania połączenia odziedziczone ze współdzielonego silnika serwera; nie mają zastosowania w tym komponencie (patrz Uwagi).
SessionClassKlasa używana przez serwer do tworzenia nowych sesji HTTP; ustaw ją na własnego potomka TIdHTTPSession.
SessionListLista przechowująca aktywne sesje HTTP; odczytaj ją, aby zarządzać sesjami z poziomu kodu, albo przypisz własną listę.
SessionStateWłącza śledzenie sesji HTTP opartej na plikach cookie, ponad bezstanowym protokołem HTTP.
SessionTimeOutLimit czasu bezczynności w milisekundach, po upływie którego sesja HTTP jest uznawana za wygasłą i kwalifikuje się do usunięcia.
SSLWłącza TLS/SSL na serwerze, aby klienci mogli łączyć się przy użyciu https://.
SSLOptionsPrzechowuje ścieżki certyfikatów, wybór wersji TLS oraz ustawienia OpenSSL dla nasłuchiwacza TLS.
StrictRequestParsingOdrzuca niejednoznaczne żądania HTTP wykorzystywane w atakach typu request smuggling i stosuje bardziej rygorystyczną walidację kodowania chunked.
ThreadPoolWłącza pulę wątków, która ponownie wykorzystuje wątki robocze zamiast je niszczyć po zamknięciu połączeń.
ThreadPoolOptionsKonfiguruje rozmiar i górną granicę wielokrotnie używanej puli wątków, gdy włączona jest opcja ThreadPool.
ThrottleOgranicza przepustowość (bity na sekundę), jaką serwer odczytuje lub zapisuje dla każdego połączenia.
VersionCiąg znaków tylko do odczytu z wersją biblioteki sgcWebSockets osadzoną w pliku binarnym.
WatchDogAutomatycznie restartuje serwer po nieoczekiwanym zamknięciu lub awarii nasłuchiwania.