Как архивировать динамический (PHP) веб-сайт в виде статического HTML?
Мы находимся в процессе закрытия Сети бесед (включая подкаст ИТ-бесед). Планируется сделать статическую HTML-версию наших веб-сайтов для постоянного размещения в интернет-архиве.
Какой самый простой способ генерировать статический HTML из примерно 5000 динамических страниц, динамически генерируемых в настоящее время из PHP?
Я знаю, что мы могли бы настроить код для кэширования вывода PHP, записать его в файлы, а затем пройтись по файлам сайта, чтобы сгенерировать каждую страницу. Но мне интересно, есть ли варианты, которые мы должны рассмотреть. Любые инструменты для этого и очистки HTML как есть? (Что-то кроме Acrobat Pro?)
К сожалению, у нас также есть достаточное количество вызовов Ajax, что усложнит эту задачу. Я полагаю, что сначала нам придется их отключить.
2 ответа
Существует большое программное обеспечение под названием " Teleport Pro" (платное программное обеспечение, к сожалению), и оно может создавать просматриваемые / дублированные копии веб-сайта. Который после загрузки на сервер должен работать точно так же, как и на исходном сайте.
Что нужно иметь в виду, когда вы создаете статический HTML из динамических страниц;
- Ваши текущие ajax-вызовы должны быть не-ajaxed (как вы сами сказали)
- Настройки.htaccess, например mod_rewrite, могут сделать ваши статические файлы бесполезными. Потому что ссылки могут не работать.
Но "Телепорт про" - это действительно солидная программа, которая существует уже довольно давно. Я использовал это в прошлом и, вероятно, буду использовать его снова.
Другим подходом может быть модуль php "php-apc", который создает кеш. В этом случае вам нужно будет просканировать весь сайт до того, как будет создан полный кеш. Я не слишком знаком с ним, но установка выполняется легко, и вы можете увидеть, имеют ли сгенерированные файлы какое-либо применение.
Это может быть не то, что вы ищете; но HTTrack будет просматривать ваш сайт для ссылок и сохранять его HTML-версию. Это зеркало будет включать в себя весь статический контент, который связан, например, изображения, CSS и JavaScript.
Единственная проблема, о которой я могу подумать, заключается в том, что ваш AJAX-скрипт получает важные данные с сервера, но, возможно, в HTTrack есть настройка для этого.