Преобразование динамического PHP / mySQL-сайта в архивную версию HTML?

У меня есть сайт PHP / mySQL, который больше не собирается добавлять новый контент. Но я хотел бы сохранить то, что у меня есть, как архив и держать его в сети. В идеале я хотел бы преобразовать его в статический сайт, чтобы он больше не нуждался в базе данных.

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

У меня есть ssh доступ к серверу, о котором идет речь. Я относительно удобен как с PHP, так и с Python, поэтому инструменты, использующие эти языки, были бы идеальными.

Примечание . Существуют две основные причины, по которым я делаю это:

  1. потому что гораздо дешевле размещать коллекцию статических файлов, чем динамический веб-сайт (я использую NearlyFreeSpeech и использую пропускную способность, которую я использую). По моим оценкам, мои расходы упадут до уровня менее 1 доллара США в месяц.
  2. спамеры каким-то образом нашли мой сайт и продолжали подписываться на учетные записи (в этот момент они заблокированы от комментариев в любом случае, но это все еще раздражает).

Недавно я использовал следующее для хорошего эффекта:

wget --mirror -w 2 -p --html-extension --convert-links -P folder_to_save_to http://mysite.com 

Возможно, вам придется использовать полный путь к вашему сценарию wget. Это изменит все ссылки, так что ваш сайт будет полностью статичным и автономным.

Если у вас есть доступ к оболочке на любой Linux-машине (возможно, даже ваш собственный веб-сервер будет достаточным), я бы рекомендовал вам просто паук и загрузить зеркало вашего собственного сайта с помощью wget. Wget – это утилита, предназначенная для зеркалирования сайтов в виде плоских файлов, и она используется довольно давно. Я считаю, что это должно служить вам хорошо:

http://www.gnu.org/software/wget/manual/wget.html

Надеюсь, это полезно.

Крис

Используя PHP, вы можете написать простой скрипт, который бы сделал это:

  1. Сохранить текущую страницу.
  2. Следите за ссылками с этой страницы и сохраняйте эти страницы (и для каждой страницы повторяйте с 1).
  3. Замените URL-адреса на текущей странице теми, которые ведут к сохраненным страницам.