CH-J ToolsSerververwaltung über SSH
Menü

Mitgelieferte Laufzeitumgebung für die HTTP-Diagnose

Datei herunterladen

Dieser übersetzte Text wird sprachlich überarbeitet. Vergleichen Sie unklare Stellen mit dem englischen Original.

HTTP/1.1, HTTP/2 und HTTP/3 verwenden denselben mitgelieferten curl-Client. macOS arm64 und Linux x64 verwenden curl 8.22.0, OpenSSL 3.5.9, nghttp2 1.70.0, ngtcp2 1.25.0 und nghttp3 1.18.0. Windows x64 verwendet den offiziellen statischen Build curl-for-win 8.22.0_3 von curl.se mit LibreSSL 4.3.3 und denselben HTTP-Bibliotheken. Es sind weder ein System-curl als Ausweichlösung noch ein Download zur Laufzeit oder Administratorrechte erforderlich. Das reproduzierbare Upstream-Build-Rezept für Windows ist https://github.com/curl/curl-for-win/tree/9d77e31e .

Bauen Sie vor dem Paketieren mit python3 scripts/native/build.py (Windows: python scripts/native/build.py). macOS/Linux benötigen C/C++-Werkzeuge, CMake, Ninja, Perl, make und pkg-config. Die Quellen sind in scripts/native/dependencies.lock.json über Version und Upstream-SHA-256 festgelegt. Das Skript prüft jeden Download, linkt Transportbibliotheken von Drittanbietern statisch und schlägt fehl, wenn HTTP2/HTTP3/SSL-Funktionen fehlen. Nur Bibliotheken des Betriebssystems bleiben dynamisch. Windows verwendet das festgelegte offizielle Binärarchiv, keinen lokal kompilierten Windows-Transportstack. Die mitgelieferte CA-Datei hat einen eigenen festgelegten Hash; Komponentenlizenzen und die Upstream-Build-Herkunft liegen der Laufzeitumgebung bei.

Client und Vertrauensspeicher werden außerhalb von app.asar in resources/native-runtime/<platform>-<arch>/ installiert. Jede Diagnose prüft vor der Verwendung Komponenten-Hashes, Architektur und Fähigkeiten der ausführbaren Datei. Konfigurationsdateien, Proxys, TLS-Vertrauensüberschreibungen aus der Umgebung und Variablen zur Bibliothekseinschleusung sind ausgeschlossen. curl läuft mit absolutem Pfad, ohne Shell, mit geprüftem CA-Vertrauen, einer ausdrücklich aufgelösten IP-Familie, ohne Cookies, ohne automatische Weiterleitungen und mit begrenzter Ausgabe und Zeit. Weiterleitungen werden von der Anwendung geprüft und neu aufgelöst. HTTPS auf anderen Ports als 443 wird unterstützt.

HTTP/3 verwendet --http3-only und gilt erst nach einer abgeschlossenen Übertragung, die HTTP-Version 3 meldet, und einer erfolgreichen Zertifikatsprüfung als bestätigt. HTTP-Fehlerantworten wie 404 können das Protokoll bestätigen. Alt-Svc ist eine Ankündigung, kein Nachweis. QUIC-Zeitüberschreitung, Zertifikatsfehler, DNS-Fehler, abgelehnte Verbindung, inkompatibles Protokoll und Komponentenfehler bleiben unterscheidbar. Eine UDP-Zeitüberschreitung lässt die Serverunterstützung unbestätigt. Die Dauer des QUIC-Handshakes wird nicht als TCP-Dauer ausgewiesen.

Jede Messung startet einen eigenen Prozess bzw. eine eigene Verbindung. Die Option „warm“ behauptet für den mitgelieferten Client keine Wiederverwendung der Verbindung. So bleiben Protokollvergleiche konsistent. Berichte enthalten Laufzeitversionen, Fähigkeiten, TLS-Prüfung und QUIC-Zeiten, während Verlauf und Export Antwortinhalte, URL-Abfragen und Authentifizierungs-Header entfernen.

Aktualisieren Sie diese Festlegungen und bauen Sie alle unterstützten Plattformen neu, wenn der Transportstack oder der CA-Vertrauensspeicher aktualisiert wird. Veröffentlichte Artefakte und Quell-Snapshots sind unveränderlich.