«Движок» сайта

3. Особенности реализации "движка" сайта

3. 1. Устройство и принцип работы

«Движок» сайта (site engine) — это одна или несколько программ (скриптов), установленных на веб-сервере, осуществляющих автоматическое обновление страниц веб-сайта . Основное назначение «движка» — избавить людей, осуществляющих поддержку сайта, от редактирования множества HTML-файлов при изменении структуры и/или содержания сайта.

Вебмастер, обновляющий страницы сайта вручную проделывает следующие процедуры : при добавлении нового материала на сайт ему нужно отформатировать текст в HTML, открыть файл с оглавлением раздела, найти нужный кусок кода, отредактировать его; открыть файл страницы «Новости», найти нужный кусок кода, отредактировать его; открыть файл главной страницы, найти нужный кусок кода, отредактировать его ... И все это — только при самой простой структуре сайта. В сложном проекте публикация нового материала может потребовать гораздо более сложных манипуляций.

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

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

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

Если попытаться построить обобщенную схему «движка» для веб-сайта, то получится следующее :

Рис.11.Устройство "движка".

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

Для изменения структуры сайта и его содержания обычно предусматривается специальный веб-интерфейс. С помощью него, например, можно добавлять новые разделы и изменять или удалять уже существующие. Для добавления нового материала нужно ввести в поля формы его название, выбрать раздел сайта, к которому он будет относиться, и сделать copy+paste текста нового материала в форму. Веб-интерфейсы некоторых «движков» позволяют, помимо ввода текста, просто загрузить соответствующий текстовый файл на сервер и затем уже сами извлекают из него всю нужную информацию.

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

Скрипт обновления читает информацию из базы данных, анализирует структуру сайта, создает на диске сервера каталоги (если они не были созданы ранее) для разделов и генерирует в них страницы, собранные из текста материалов и шаблонов дизайна, хранящихся в базе данных. В некоторых «движках» скрипт не создает файлы на диске, а генерирует страницы «на лету» по запросам посетителей : в этих случаях URL-адреса страниц выглядят не как www.site.ru/razdel/material.html, а примерно как www.site.ru/index.php3?section=razdel&page=material.

Хранение структуры, шаблонов дизайна и текстов в базе данных позволяет легко оснастить сайт функцией поиска, картой разделов (карта сайта), а также, например, дает возможность генерировать сколько угодно версий сайта: различного оформления — текстовую, для тех, кто смотрит сайт на экране сотового телефона, стандартную, flash-версию; различной ширины — стопроцентной, фиксированной; оптимизированные под разные браузеры — последнюю бета-версию Microsoft Internet Explorer, Netscape Navigator 1.0 и т.д. Без проблем решается вопрос альтернативного представления информации, например, в виде версий для печати. В базе данных можно хранить не только текст материалов сайта, но и записи гостевых книг и форумов, результаты опросов, статистику посещений и т.п., легко интегрируя их в информационное наполнение сайта.


 Предыдущая                Содержание              Следующая