Делаем off-line копию сайта

05.06.2011
@LEXXX_NF

Итак, нам нужен сайт, который бы работал с CD-диска без всяких серверов, то есть будем делать статическую копию сайта.

Очевидное решение для не-гика — воспользоваться специальной программой, типа WebCopier, которая как раз предназначена для того, чтобы скачивать сайты. Когда я её попробовал, оказалось, что ссылки не работают, фоны и вообще картинки загрузились не все, короче, сплошное разочарование.

А теперь true-linux-way решение, которое оказалось работоспособным на 100%. Берём wget и запускаем его с такими параметрами: wget -t 3 —restrict-file-names=windows -E -r -k -p -np http://your.site/subfolder/. Всё, копия сайта готова! И даже ссылки с GET-параметрами работают :)

Рассмотрим немного подробнее весь этот ворох параметров:

  • -t
    количество попыток;
  • --restrict-file-names=windows
    имена создаваемых файлов будут совместимы с ОС Windows;
  • -E
    выставить страничкам html-расширение, это нужно, если адреса страниц заканчиваются на .php, .asp и т.п.;
  • -r
    скачивать рекурсивно;
  • -k
    конвертировать ссылки в документах для локального просмотра. Благодаря этой опции будет нормально работать перелинковка страниц и будут отображаться картинки;
  • -p
    качать все необходимые для просмотра страниц файлы. Будут закачены картинки, стили, скрипты и т.п.;
  • -np
    не ходить выше указанной директории. Гарантирует, что будет скачан только один раздел сайта.

Да, один нюанс: обрабатывать ссылки в css-файлах wget научился только в версии 1.12.

Комментов нет совсем... почему-то...

Писáть здесь