Premye lage ki estab nan sèvis piblik la pou telechaje GNU kontni entènèt Wget2

Apre twa ane edmi nan devlopman, yo te prezante premye lage ki estab nan pwojè a GNU Wget2, devlope yon vèsyon konplètman reamenaje nan pwogram nan pou otomatize telechaje rekursif nan kontni GNU Wget. GNU Wget2 te fèt ak reekri nan grafouyen epi li remakab pou deplase fonksyonalite debaz yon kliyan entènèt nan bibliyotèk libwget, ki ka itilize separeman nan aplikasyon yo. Sèvis piblik la gen lisans anba GPLv3+, epi bibliyotèk la gen lisans dapre LGPLv3+.

Olye pou yo retravay baz kòd ki deja egziste a piti piti, li te deside refè tout bagay depi nan grafouyen epi etabli yon branch Wget2 separe pou aplike lide pou restriktirasyon, ogmante fonctionnalités ak fè chanjman ki kraze konpatibilite. Ak eksepsyon de depresyon nan pwotokòl la FTP ak fòma WARC la, wget2 ka aji kòm yon ranplasman transparan pou sèvis piblik la klasik wget nan pifò sitiyasyon.

Sa te di, wget2 gen kèk dokimante diferans nan konpòtman, bay anviwon 30 opsyon adisyonèl, epi li sispann sipòte plizyè douzèn opsyon. Gen ladan yo pwosesis opsyon tankou "-ask-password", "-header", "-exclude-directories", "-ftp*", "-warc*", "-limit-rate", "-relative" te sispann " ak "--dekonekte".

Inovasyon kle yo enkli:

  • Deplase fonksyonalite nan bibliyotèk libwget la.
  • Tranzisyon nan achitekti milti-threaded.
  • Kapasite pou etabli plizyè koneksyon an paralèl epi telechaje sou plizyè fil. Li posib tou pou paralelize download yon sèl dosye divize an blòk lè l sèvi avèk opsyon "-chunk-size".
  • HTTP/2 sipò pwotokòl.
  • Sèvi ak tèt HTTP If-Modified-Since pou telechaje sèlman done modifye yo.
  • Chanje nan sèvi ak limitè ekstèn Pleasant tankou Trickle.
  • Sipò pou Accept-Encoding header, transfè done konprese, ak algoritm konpresyon brotli, zstd, lzip, gzip, deflate, lzma, ak bzip2.
  • Sipò pou TLS 1.3, OCSP (Online Certificate Status Protocol) pou tcheke sètifika revoke, HSTS (HTTP Strict Transport Security) mekanis pou fòse redireksyon sou HTTPS ak HPKP (HTTP Public Key Pinning) pou obligatwa sètifika.
  • Kapasite pou itilize GnuTLS, WolfSSL ak OpenSSL kòm backend pou TLS.
  • Sipò pou ouvèti rapid nan koneksyon TCP (TCP FastOpen).
  • Sipò fòma Metalink entegre.
  • Sipò pou non domèn entènasyonalize (IDNA2008).
  • Kapasite nan travay ansanm nan plizyè serveurs prokurasyon (yo pral chaje yon kouran nan yon sèl prokurasyon, ak dezyèm nan yon lòt).
  • Sipò entegre pou flux nouvèl nan fòma Atom ak RSS (pa egzanp, pou analize ak telechaje lyen). Done RSS/Atom yo ka telechaje nan yon dosye lokal oswa sou rezo a.
  • Sipò pou ekstrè URL soti nan Sitemaps. Disponibilite analizeur pou ekstrè lyen ki soti nan dosye CSS ak XML.
  • Sipò pou 'enkli' direktiv nan fichye konfigirasyon ak distribisyon paramèt atravè plizyè fichye (/etc/wget/conf.d/*.conf).
  • Mekanis kachèt rechèch DNS entegre.
  • Posiblite pou kodaj kontni pa chanje kodaj dokiman an.
  • Kontablite pou fichye "robots.txt" pandan telechajman repetitif yo.
  • Mòd ekri serye ak fsync () apèl apre ekonomize done yo.
  • Kapasite pou rekòmanse sesyon TLS entèwonp yo, ansanm ak kachèt epi sove paramèt sesyon TLS yo nan yon dosye.
  • Mòd "--input-file-" pou chaje URL k ap vini atravè kouran opinyon estanda a.
  • Tcheke sijè ki abòde bonbon an ak anyè sifiks domèn piblik (Lis sifiks piblik) pou izole youn ak lòt sit diferan ki òganize nan menm domèn dezyèm nivo (pa egzanp, "a.github.io" ak "b.github. io").
  • Sipòte telechaje ICEcast/SHOUTcast difizyon.

Sous: opennet.ru

Add nouvo kòmantè