Технология Live Update

Проблема обновления сайта - одна из самых острых при создании и поддержке Интернет-проектов. Большое количество денег уходит на размещение новой информации на сайте. Делать это можно различными способами. Самый традиционный из них - простое редактирование HTML-страничек. Однако он может подойти только для небольших проектов с более-менее постоянной структурой сайта. Если же сайт имеет более разветвленную структуру, большое количество документов и развитое меню, обновлять его таким образом становится слишком трудоемко. Действительно, ведь при этом необходимо отслеживать все ссылки и обновлять меню на всех страницах.

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

Другой вариант - формирование сайта "на лету" при помощи CGI-скрипта из набора шаблонов. В таком случае, например, для добавления нового пункта меню, достаточно изменить только один документ-шаблон, отвечающий за меню.

Для многих сайтов подобного уровня автоматизации этого более чем достаточно. Однако существуют ситуации (например, если статьи на сайт поставляются группой авторов, которые должны оперативно поставлять информцию так, что невозможно обеспечить взаимодействие через единственного администратора), когда этого мало. Или же если необходимо иметь возможность обновить сайт в любой момент времени и из любой географической точки, но при этом нежелательно осуществлять удаленную работу по telnet.

В таком случае можно использовать модную сегодня на Диком Западе технологию Live Update. Идея ее заключается в том, что пользователь поставляет через WWW информацию на сервер (заполняет форму на web-странице), а последний самостоятельно формирует HTML-документ и включает его в структуру сайта.

Конечно, это самый примитивный вариант такого подхода. При правильной организации пользователь (обладая соответствующими правами доступа) должен иметь возможность как угодно трансформировать сайт, пользуясь доступом только через WWW, но не используя telnet или ftp.

При этом скрипт на сайте автоматически должен формировать все необходимые меню, новости, списки ключевых слов и иные вспомогательные документы, связанные с публикацией статьи на сайте. Кроме того, скрипт должен по возможности уменьшить необходимость форматирования текста со стороны пользователя. В идеальном случае пользователь должен просто выбирать раздел сайта, в который он хочет добавить свой документ, и предоставлять его в формате plain text (возможно, с приложенными к нему дополнительными материалами вроде картинок). Скрипты же самостоятельно формируют всю необходимую HTML-разметку. В случае необходимости пользователю также может быть предоставлен доступ к отдельным фрагментам файловой системы сайта.

Поскольку информация на такие сайты поставляется, как правило, не администратором, а группой пользователей-корреспондентов, необходим механизм взаимодействия всех этих лиц между собой. Как правило, это обеспечивается системой закрытых для рядового пользователя сайта форумов.

Сайты, построенные по такому принципу, часто используются западными службами новостей, а также другими организациями. Они обеспечивают самое легкое и оперативное обновление информации. Требуя достаточно значительных затрат на ввод в эксплуатацию (программирование, отладка, настройка), они минимизируют затраты на поддержание их в актуальном состоянии. Если предполагается, что информацию на сайт должна оперативно поставлять большая группа лиц либо же любая задержка при поставке информации на сайт невозможна, необходимо использовать средства Live Update. Они также необходимы, если нет возможности постоянно обеспечивать доступ к серверу по telnet или ftp, но необходимо обеспечить возможность обновления сайта в любой момент.

Наряду с достоинствами, Live Update имеет свои недостатки. Во-первых, нужно обеспечить высокий уровень безопасности при доступе к скриптам, отвечающим за обновление сайта, поскольку злоумышленник, получивший к ним доступ, может испортить весь сайт либо значительную его часть. Во-вторых, сайт такого рода должен иметь достаточно жесткую структуру (как правило, иерархическую), поскольку в противном случае его невозможно будет автоматически генерировать.

Спектр технических решений для сайтов Live Update очень широк - от перла и текстовых файлов до движков полновесных СУБД типа Oracle или Informix. Также может очень различаться степень автоматизации.

Резюмируя, можно порекомендовать использование Live Update во всех случаях, когда сайт обновляется часто (чаще, чем раз в неделю). Особенно же удачно будет такое решение для новостных сайтов.

Примером полнофункционального движка Live Update может служить система обновления сайта VARAN.design (www.kv.minsk.by/varan/).

Денис МАРГОЛИН,
dat@belcaf.minsk.by,
www.kv.minsk.by/varan/

Версия для печатиВерсия для печати

Номер: 

13 за 1999 год

Рубрика: 

Internet
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!