Intereting Posts

зеркало сайта с wget, что только ответ с gzip

Я пытаюсь отразить сайт, но сервер отвечает только с gzip-страницами, поэтому wget не будет рекурсивно. Я искал вокруг, и есть некоторые ссылки на патч, чтобы добавить поддержку gzip в wget, однако они, похоже, устарели. Есть какой-либо способ сделать это? Если бы я не рассматривал обратное проксирование через nginx.

У вас есть 2 ^ H4 пути:

  1. wget one page, gunzip it и обработать его снова из html … итерации до конца:
 wget -m http://example.org/page.html find . -name \*gz -exec gzip -d {} \; find . -name \*html -exec wget -M -F {} \; 

это будет медленным, но должно работать

  1. установить privoxy и настроить его для запроса распаковки страниц

+ Предотвратить сжатие
Предотвратите сжатие данных на веб-сайте. Некоторые веб-сайты делают это, что является проблемой для Privoxy при построении без поддержки zlib, так как фильтр + и gif-deanimate не будут работать с сжатыми данными. Тем не менее, это замедлит подключение к этим веб-сайтам.

  1. privoxy или другой прокси-сервер может также получить сжатые страницы и доставить несжатую копию клиенту; Google для этого.

  2. мой wget отправит заголовок «Accept-Encoding: gzip», который запрашивает содержимое gzip … Проверьте, почему вы это делаете. Может быть, у вас есть прокси-сервер, который его добавляет? Вы также можете использовать privoxy для удаления этого заголовка

Запоздалый ответ, но для целей веб-ссылки:

 wget -O - $URL | zcat | wget -B $URL -i - -F -c -T 45 -k -r --page-requisites 

«Хорошо известно» для кэширования документации. Параметры тайм-аута / повтора (например, с -c и -T) могут быть полезны в отношении прерывистых «переходов канала» в беспроводных сетях. Конечно, все варианты необязательны.