Kutulutsidwa koyamba kokhazikika kwazomwe mungagwiritse ntchito kutsitsa zomwe zili patsamba la GNU Wget2

Pambuyo pa zaka zitatu ndi theka za chitukuko, kutulutsidwa koyamba kokhazikika kwa pulojekiti ya GNU Wget2 kwaperekedwa, ndikupanga pulogalamu yokonzedwanso kuti ipangitse kutsitsa kobwereza kwa GNU Wget. GNU Wget2 idapangidwa ndikulembedwanso kuchokera pachiwopsezo ndipo ndiyodziwika pakusuntha zofunikira za kasitomala wapaintaneti mulaibulale ya libwget, yomwe ingagwiritsidwe ntchito padera pamapulogalamu. Ntchitoyi ili ndi chilolezo pansi pa GPLv3+, ndipo laibulale ili ndi chilolezo pansi pa LGPLv3+.

M'malo mokonzanso pang'onopang'ono ma code omwe analipo, adaganiza zokonzanso zonse kuyambira pachiyambi ndikukhazikitsa nthambi yosiyana ya Wget2 kuti igwiritse ntchito malingaliro okonzanso, kukulitsa magwiridwe antchito ndikusintha zomwe zimasokoneza kugwirizana. Kupatulapo kuchotsedwa kwa protocol ya FTP ndi mtundu wa WARC, wget2 imatha kukhala m'malo mwachiwonekere cha zida zamtundu wa wget nthawi zambiri.

Zomwe zikunenedwa, wget2 ili ndi zolembedwa zosiyana zamakhalidwe, imapereka zosankha zina 30, ndikusiya kuthandizira zosankha zingapo. Kuphatikizira kukonza zosankha monga "-ask-password", "-header", "-exclude-directories", "-ftp*", "-warc*", "-limit-rate", "-relative" zakhala zikuchitika. anasiya " ndi "--kuchotsa".

Zosintha zazikulu zikuphatikiza:

  • Kusunthira magwiridwe antchito ku library ya libwget.
  • Kusintha kwa zomangamanga zamitundu yambiri.
  • Kutha kukhazikitsa maulumikizidwe angapo molumikizana ndikutsitsa ku ulusi wambiri. Ndizothekanso kufananiza kutsitsa kwa fayilo imodzi yogawidwa m'mabowo pogwiritsa ntchito njira ya "-chunk-size".
  • HTTP/2 protocol thandizo.
  • Gwiritsani ntchito mutu wa If-Modified-Since HTTP kutsitsa zomwe zasinthidwa zokha.
  • Sinthani kugwiritsa ntchito zoletsa zakunja za bandwidth monga trickle.
  • Kuthandizira pamutu wa Accept-Encoding, kusamutsa kwa data koponderezedwa, ndi brotli, zstd, lzip, gzip, deflate, lzma, ndi bzip2 compression algorithms.
  • Thandizo la TLS 1.3, OCSP (Online Certificate Status Protocol) poyang'ana ziphaso zochotsedwa, HSTS (HTTP Strict Transport Security) njira yokakamiza kupitanso ku HTTPS ndi HPKP (HTTP Public Key Pinning) kuti ipange satifiketi.
  • Kutha kugwiritsa ntchito GnuTLS, WolfSSL ndi OpenSSL ngati ma backends a TLS.
  • Thandizo lotsegula mwachangu maulumikizidwe a TCP (TCP FastOpen).
  • Thandizo la mtundu wa Metalink womangidwa.
  • Kuthandizira kwa mayina amtundu wapadziko lonse lapansi (IDNA2008).
  • Kutha kugwira ntchito nthawi imodzi kudzera pa ma seva angapo a proxy (mtsinje umodzi udzakwezedwa kudzera mu proxy imodzi, ndipo yachiwiri kudzera ina).
  • Thandizo lomangidwira lazakudya mumtundu wa Atom ndi RSS (mwachitsanzo, pakusanthula ndi kutsitsa maulalo). Zambiri za RSS/Atomu zitha kutsitsidwa kuchokera pafayilo yapafupi kapena pamaneti.
  • Thandizo lochotsa ma URL kuchokera ku Sitemaps. Kupezeka kwa magawo ochotsa maulalo ku mafayilo a CSS ndi XML.
  • Kuthandizira kwa malangizo a 'kuphatikizapo' mumafayilo osinthira ndi kugawa zosintha pamafayilo angapo (/etc/wget/conf.d/*.conf).
  • Makina omangidwira a DNS query caching.
  • Kuthekera kolembanso zomwe zili posintha kabisidwe ka chikalata.
  • Kuwerengera fayilo ya "robots.txt" panthawi yotsitsa mobwereza.
  • Zolemba zodalirika ndi foni ya fsync() mutasunga deta.
  • Kutha kuyambiranso magawo osokonezedwa a TLS, komanso cache ndikusunga magawo a gawo la TLS ku fayilo.
  • "--input-file-" mode potsegula ma URL akubwera kudzera munjira yolowera.
  • Kuyang'ana kuchuluka kwa Cookie motsutsana ndi chikwatu cha zomata za anthu onse (Public Suffix List) kuti adzilekanitse ndi masamba ena omwe ali mugawo lachiwiri lomwelo (mwachitsanzo, "a.github.io" ndi "b.github. iyo").
  • Imathandizira kutsitsa kutsitsa kwa ICEcast/SHOUTcast.

Source: opennet.ru

Kuwonjezera ndemanga