CH-J Server Managerpamamahala ng server sa pamamagitan ng SSH
Menu

Kasamang runtime para sa HTTP diagnostiko

I-download ang file

Kasalukuyang sinusuri ang pagsasaling ito sa aspektong pangwika. Kung may bahaging hindi malinaw, ihambing ito sa orihinal na tekstong Ingles.

Gumagamit ang HTTP/1.1, HTTP/2 at HTTP/3 ng iisang kasamang curl client. Gumagamit ang macOS arm64 at Linux x64 ng curl 8.22.0, OpenSSL 3.5.9, nghttp2 1.70.0, ngtcp2 1.25.0 at nghttp3 1.18.0. Gumagamit ang Windows x64 ng opisyal na static build ng curl-for-win 8.22.0_3 mula sa curl.se na may LibreSSL 4.3.3 at parehong mga HTTP library. Hindi kailangan ng fallback sa curl ng sistema, pag-download habang tumatakbo o pahintulot ng administrator. Ang reproducible na upstream build recipe para sa Windows ay https://github.com/curl/curl-for-win/tree/9d77e31e .

Mag-build gamit ang python3 scripts/native/build.py (Windows: python scripts/native/build.py) bago ang packaging. Nangangailangan ang macOS/Linux ng mga tool para sa C/C++, CMake, Ninja, Perl, make at pkg-config. Naka-pin ang mga source ayon sa bersyon at upstream SHA-256 sa scripts/native/dependencies.lock.json. Bine-verify ng script ang bawat download, statically na nili-link ang mga third-party transport library at nabibigo kapag walang mga feature na HTTP2/HTTP3/SSL. Ang mga library lamang ng operating system ang nananatiling dynamic. Gumagamit ang Windows ng naka-pin na opisyal na binary archive, hindi ng lokal na kinompile na Windows transport stack. May sariling naka-pin na hash ang kasamang CA file; kasama ng runtime ang mga lisensya ng component at ang pinagmulan ng upstream build.

Naka-install ang client at ang trust store sa labas ng app.asar sa resources/native-runtime/<platform>-<arch>/. Bine-verify ng bawat diagnostiko ang mga hash ng component, arkitektura at mga kakayahan ng executable bago gamitin. Hindi isinasama ang mga config file, proxy, environment override para sa tiwala ng TLS at mga variable para sa library injection. Tumatakbo ang curl gamit ang absolute path, naka-disable ang shell, may na-verify na tiwala sa CA, tahasang itinakdang IP family, walang cookie, walang awtomatikong redirect, at may limitadong output at oras. Bine-validate at muling nire-resolve ng application ang mga redirect. Sinusuportahan ang HTTPS sa mga port na iba sa 443.

Gumagamit ang HTTP/3 ng --http3-only at kinukumpirma lamang pagkatapos ng natapos na transfer na nag-uulat ng HTTP version 3 at matagumpay na pag-verify ng sertipiko. Maaaring kumpirmahin ng mga HTTP error response tulad ng 404 ang protocol. Patalastas ang Alt-Svc, hindi patunay. Nananatiling magkakaiba ang QUIC timeout, pagkabigo ng sertipiko, pagkabigo ng DNS, pagtanggi sa koneksyon, hindi compatible na protocol at pagkabigo ng component. Ang UDP timeout ay nag-iiwan sa suporta ng server na hindi pa na-verify. Hindi iniuulat bilang TCP timing ang timing ng QUIC handshake.

Nagsisimula ang bawat pagsukat ng hiwalay na proseso/koneksyon. Hindi inaangkin ng warm na opsyon ang muling paggamit ng koneksyon para sa kasamang client. Pinapanatili nitong pare-pareho ang mga paghahambing ng protocol. Kasama sa mga ulat ang mga bersyon ng runtime, mga kakayahan, pag-verify ng TLS at timing ng QUIC, habang inaalis ng kasaysayan/export ang mga body, URL query at authentication header.

I-update ang mga pin na ito at muling i-build ang bawat sinusuportahang platform kapag ina-update ang transport stack o ang CA trust store. Hindi nababago ang mga nailathalang artifact at source snapshot.