Нахустин нашри устувори утилита барои зеркашии мундариҷаи веби GNU Wget2

Пас аз сеюним соли рушд, аввалин нашри устувори лоиҳаи GNU Wget2 муаррифӣ шуд, ки версияи комилан аз нав тарҳрезии барномаро барои автоматикунонии зеркашии рекурсивии мундариҷаи GNU Wget таҳия кардааст. GNU Wget2 аз сифр тарҳрезӣ ва аз нав навишта шудааст ва барои интиқоли функсияҳои асосии мизоҷи веб ба китобхонаи libwget, ки мумкин аст дар барномаҳо алоҳида истифода шавад, намоён аст. Хизматрасонӣ дар доираи GPLv3+ иҷозатнома дорад ва китобхона дар доираи LGPLv3+ иҷозатнома дорад.

Ба ҷои тадриҷан аз нав кор кардани пойгоҳи мавҷудаи код, тасмим гирифта шуд, ки ҳама чизро аз сифр аз нав барқарор карда, як филиали алоҳидаи Wget2 таъсис дода шавад, то ғояҳои таҷдиди сохтор, баланд бардоштани функсияҳо ва ворид кардани тағйироте, ки мутобиқатро вайрон мекунанд. Ба истиснои бекор кардани протоколи FTP ва формати WARC, wget2 метавонад дар аксари ҳолатҳо ҳамчун ивазкунандаи шаффофи утилитаи классикии wget амал кунад.

Бо вуҷуди ин, wget2 дорои баъзе фарқиятҳои ҳуҷҷатгузорӣ дар рафтор, тақрибан 30 имконоти иловагӣ пешниҳод мекунад ва дастгирии якчанд даҳҳо вариантҳоро қатъ мекунад. Аз ҷумла коркарди чунин вариантҳо ба мисли "-пурсиш-парол", "-сарлавҳа", "-истисно кардани директорияҳо", "-ftp*", "-warc*", "-limit-rate", "-relative" қатъ шуд " ва "--пайванд".

Навовариҳои асосӣ инҳоянд:

  • Интиқоли функсия ба китобхонаи libwget.
  • Гузариш ба меъмории бисёрсоҳавӣ.
  • Имконияти таъсиси пайвастагиҳои сершумор дар мувозӣ ва зеркашӣ ба риштаҳои сершумор. Бо истифода аз имконоти "-chunk-size" зеркашии як файли ба блокҳо тақсимшуда низ имконпазир аст.
  • Дастгирии протоколи HTTP/2.
  • Барои зеркашии танҳо маълумоти тағирёфта сарлавҳаи If-Modified-Sence HTTP-ро истифода баред.
  • Гузариш ба истифодаи маҳдудиятҳои фарохмаҷрои беруна ба монанди трикл.
  • Дастгирии сарлавҳаи Accept-Encoding, интиқоли фишурдашудаи маълумот ва алгоритмҳои фишурдани brotli, zstd, lzip, gzip, deflate, lzma ва bzip2.
  • Дастгирии TLS 1.3, OCSP (Протоколи статуси сертификати онлайн) барои тафтиши сертификатҳои бозхондашуда, механизми HSTS (HTTP Strict Transport Security) барои маҷбур кардани масир ба HTTPS ва HPKP (HTTP Калиди ҷамъиятии Pinning) барои ҳатмии сертификат.
  • Имконияти истифодаи GnuTLS, WolfSSL ва OpenSSL ҳамчун пуштибонии TLS.
  • Дастгирии зуд кушодани пайвастҳои TCP (TCP FastOpen).
  • Дастгирии формати дарунсохташудаи Metalink.
  • Дастгирии доменҳои байналмилалӣ (IDNA2008).
  • Имконияти ҳамзамон кор кардан тавассути якчанд серверҳои прокси (як ҷараён тавассути як прокси ва дуввум тавассути дигараш бор карда мешавад).
  • Дастгирии дарунсохт барои наворҳои ахбор дар форматҳои Atom ва RSS (масалан, барои скан ва зеркашии истинодҳо). Маълумоти RSS/Atomро аз файли маҳаллӣ ё тавассути шабака зеркашӣ кардан мумкин аст.
  • Дастгирии истихроҷи URL аз харитаҳои сайт. Мавҷудияти таҳлилгарон барои истихроҷи истинодҳо аз файлҳои CSS ва XML.
  • Дастгирии дастури "дохил кардан" дар файлҳои конфигуратсия ва тақсимоти танзимот дар байни якчанд файлҳо (/etc/wget/conf.d/*.conf).
  • Механизми кэшкунии дархости DNS дарунсохт.
  • Имконияти дубора рамзгузорӣ кардани мундариҷа тавассути тағир додани рамзгузории ҳуҷҷат.
  • Баҳисобгирии файли "robots.txt" ҳангоми зеркашиҳои рекурсивӣ.
  • Ҳолати боэътимоди навиштан бо занги fsync() пас аз захира кардани маълумот.
  • Имконияти аз нав барқарор кардани сессияҳои қатъшудаи TLS, инчунин кэш кардан ва захира кардани параметрҳои сессияи TLS дар файл.
  • Ҳолати "--input-file-" барои боркунии URL-ҳо тавассути ҷараёни вуруди стандартӣ.
  • Санҷиши доираи Cookie бо феҳристи суффиксҳои домени ҷамъиятӣ (Рӯйхати суффиксҳои ҷамъиятӣ) барои ҷудо кардани сайтҳои мухталифе, ки дар як домени сатҳи дуюм ҷойгир шудаанд (масалан, “a.github.io” ва “b.github. io").
  • Зеркашии ҷараёни ICEcast/SHOUTcast -ро дастгирӣ мекунад.

Манбаъ: opennet.ru

Илова Эзоҳ