Добро пожаловать на мой блог

Собственно о чем речь?

Это блог! В котором я веду свои заметки и копи-пасты с других сайтов. В основном это не что иное как дневник. Приятного чтения.

Как сделать себе такую панель?

Это можно выяснить перейдя по ссылке »

Вход в блог

Забыли/потеряли пароль?

Регистрация закрыта

Мне жаль, но регистрация на этом блоге закрыта!

Для того, чтоб получить регистрацию свяжитесь с владельцем блога nick {at} homolibere {dot} info.

Note: If you are the admin and want to display the register form here, log in to your dashboard, and go to Settings > General and click "Anyone can register".

Создание зеркала Website с помощью Wget

GNU wget очень популярная качалка, и совсем не беспочвенно. Вы можете ее использовать просто для скачивания файлов с удаленных серверов, но программа намного мощнее и позволяет делать огромное количество разнообразных «полезностей».

Одна из самых примечательных функций wget — это зеркалирование сайтов. Это позволяет создать вам полную локальную копию сайта, включая стили, картинки и прочее. Все (внутренние) ссылки будут скачаны и переадресованы на локальную копию (и все ресурсы).

Самый простой способ вызвать зеркалирование сайта с помощью wget:

1
$ wget -m http://www.example.com/

Есть несколько тонкостей, которые вам могут понадобится в этом случае.

Во-первых, такой метод не очень удобен для локального просмотра сайта, так как ссылки на страницах локального зеркала все еще ведут на удаленные URLs а не на локальное зеркало. К примеру, вы зеркалируете http://www.example.com/, ссылка на главной странице ведущая на http://www.example.com/page2.html будет все равно ссылается на example.com сервер и приведет к странице ошибки если вы попытаетесь просмотреть локальный репозитарий в отсутствии интернета (по какой-либо причине).

Для решения этой проблемы используйте -k вместе с предыдущей строкой:

1
$ wget -mk http://www.example.com/

Теперь, ссылка о которой говорилось ранее будет указывать на соответствующую локальную копию страницы page2.html. То же самое происходит со всеми изображениями, stylesheets и ресурсами. Теперь локальное зеркала сайта будет полностью функционально даже при отсутствии интернет соединения («Не дай Бог!»: прим. Homolibere).

Есть еще одно очень важное дело, которое мы тут не оговорили — нагрузка. Иногда, если не обращать внимание на нагрузку, полностью «положить» удаленный сервер или слишком сильно нагрузить его большой частотой запросов. Стоит заботится о том, чтобы не перегрузить сервер только для одного себя любимого. Надо быть вежливым, особенно к «маленьким» сайтам.

Если уж решили быть вежливыми, надо заставить вставлять промежутки таймаута между запросами. Делается при помощи опции -w

1
$ wget -mk -w 20 http://www.example.com/

Это усьтановит задержку в  20 секунд между запросами. Заменив число и по желанию добавив суффикс m для минут, h для часов и  d для … да, дней, если хотите замедлить зеркалирование настолько долго.

Вот и все. Теперь если вам надо сделать зеркало какого-то сайта или сделать его backup, вы можете это делать с помощью опций wget. Для более подробного ознакомления с возможностями wget читаем  man wget где есть много дополнительных функций, таких как случайная задержка, установки собственного useragent, отправки coockie на сайт и многое другое.

взято с FOSSwire переведено мной

августа 27, 2008 Add a comment
Home > Unix Like > Создание зеркала Website с помощью Wget
Comments (2) Trackback Leave a comment
  1. StalkerSoft
    Март 3rd, 2011 at 11:31 | #1

    уберите обрамление URL оно сбивает с толку народ

    Должно быть просто http://www.example.com/

Allowed tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackbacks (0 ) Detail Trackback