Ошибка: Failed to parse the Currency Converter XML document.
$49 737.60


Ошибка: Failed to parse the Currency Converter XML document.
$17 110.03


Ошибка: Failed to parse the Currency Converter XML document.
$1 786.73


SSI - что, когда, как?

Основным, простейшим, но в то же время чрезвычайно мощным инструментом поддержки больших наборов документов является SSI (Server-Side Includes — включения на стороне сервера). Если кто-то из вас знает Си, то он быстро поймет, что SSI чрезвычайно похож на макроязык. С помощью SSI можно не только в зависимости от некоторых условий выводить определенные части документа, не только формировать документ из заранее определенных кусочков, но и вставлять результат работы некоторого CGI сценария или программы прямо в документ.

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


Только используя SSI вы можете в считанные минуты полностью изменить внешний вид или обновить систему навигации на узле, имеющем сотни или тысячи документов, и так, что это пройдет безболезненно для пользователей узла, т.к. вам только потребуется заменить несколько файлов, а остальное за вас сделает сервер.

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


Теперь приведем пример файла, вставляемого в начало каждого документа сервера http://www.citforum.ru/. Особенностью сервера является то, что каждый раздел имеет свой базовый цвет, и все это создается этим единственным файлом:

<!--#if expr=«$DOCUMENT_URI=/\/internet\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/database\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/ofis\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/abtec\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/programming\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/operating_systems\//» -->
<!--#elif expr=«$DOCUMENT_URI=/\/abtec\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/ftp\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/news\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/finnews\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/events\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/lists\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/hardware\//» -->

<!--#elif expr=«$DOCUMENT_URI=/\/nets\//» -->

<!--#else -->

<!--#endif -->

    
<!--#include virtual=«/cgi-bin/Look_new.cgi»-->

Сервер содержит море(!) аналитической информации    
Рубрикатор всех документов CIT Forum

Данный пример иллюстрирует работу с условными операторами, с шаблонами, а также возможность использования вложенных SSI.

Следующий пример иллюстрирует, как с помощью SSI собираются страницы в Кладовой WebClub.ru. Их особенность заключается в наличии повторяющихся блоков одинаково оформленного текста. Достигается это использованием трех шаблонов:

_head.html

Web Club Repository. <!--#echo var=«TITLE» -->

«>
»>

<h>КЛАДОВАЯ</h>

<!--#echo var=«TITLE» -->

_item.html

<!--#echo var=«I_TITLE» -->  

<!--#if expr=«$I_PIC» -->

« width=»<!--#echo var=«I_PIC_W» -->«
height=»<!--#echo var=«I_PIC_H» -->« border=0>

<!--#endif -->

<!--#if expr=»$I_SITE« -->
Узел поддержки:»><!--#echo var=«I_SITE» -->

<!--#endif -->

<!--#if expr=«$I_PAGE» -->
Домашняя страница:«><!--#echo var=»I_PAGE« -->

<!--#endif -->

<!--#if expr=»$I_ARCHIVE« -->
Она сама:»><!--#echo var=«I_ARCHIVE» -->

<!--#endif -->

<!--#if expr=«$I_LOCALARCHIVE» -->
Она сама у нас: «><!--#echo var=»I_LOCALARCHIVE« -->

<!--#endif -->

<!--#if expr=»$I_PLATFORM« -->
Платформа: <!--#echo var=»I_PLATFORM« -->

<!--#endif -->
<!--#if expr=»$I_STATUS« -->
Статус: <!--#echo var=»I_STATUS« -->

<!--#endif -->

<!--#if expr=»$I_DESCRIPTION« -->
<!--#echo var=»I_DESCRIPTION« -->
<!--#else -->
No description.
<!--#endif -->

_foot.html

<!--#include virtual=»/materials/banfooter.html«-->

А вот как выглядит на самом деле файл, который вы воспринимаете, как обычный HTML документ (он сокращен для удобства восприятия):

<!--#set var=»TITLE« value=»HTML редакторы и утилиты« -->
<!--#set var=»KEYWORDS« value=»HTML,editor,редактор,утилита,utilities,freeware,shareware,free« -->
<!--#set var=»DESCRIPTION« value=»HTML редакторы и утилиты« -->

<!--#include virtual=»_head.html« -->

<!--#set var=»I_TITLE« value=»Prime Style 1.2« -->
<!--#set var=»I_RATING« value=»1« -->
<!--#set var=»I_PIC« value=»ps.gif« -->
<!--#set var=»I_PIC_W« value=»300« -->
<!--#set var=»I_PIC_H« value=»225« -->
<!--#set var=»I_SITE« value=»« -->
<!--#set var=»I_PAGE« value=»http://www.northnet.com.au/~hardy/prime/« -->
<!--#set var=»I_ARCHIVE« value=»« -->
<!--#set var=»I_LOCALARCHIVE« value=»« -->
<!--#set var=»I_PLATFORM« value=»Windows 95/NT« -->
<!--#set var=»I_STATUS« value=»Free« -->
<!--#set var=»I_DESCRIPTION« value=»Простой и наглядный редактор каскадных
стилей. Простой и понятный интерфейс.« -->

<!--#include virtual=»_item.html« -->

<!--#set var=»I_TITLE« value=»Web-O-Rama v.4.00« -->
<!--#set var=»I_RATING« value=»« -->
<!--#set var=»I_PIC« value=»weborama.gif« -->
<!--#set var=»I_PIC_W« value=»300« -->
<!--#set var=»I_PIC_H« value=»225« -->
<!--#set var=»I_SITE« value=»« -->
<!--#set var=»I_PAGE« value=»« -->
<!--#set var=»I_ARCHIVE« value=»« -->
<!--#set var=»I_LOCALARCHIVE« value=»« -->
<!--#set var=»I_PLATFORM« value=»Windows 95/NT« -->
<!--#set var=»I_STATUS« value=»Free« -->
<!--#set var=»I_DESCRIPTION« value=»Весьма удобный интерфейс, возможность
внешнего просмотра файлов через браузер, открывает сразу много файлов.

Есть встроенный индикатор контроля системных ресурсов.« -->

<!--#include virtual=»_item.html« -->

<!--#set var=»I_TITLE« value=»HTML Font Colorizer« -->
<!--#set var=»I_RATING« value=»3« -->
<!--#set var=»I_PIC« value=»« -->
<!--#set var=»I_PIC_W« value=»100« -->
<!--#set var=»I_PIC_H« value=»100« -->
<!--#set var=»I_SITE« value=»« -->
<!--#set var=»I_PAGE« value=»http://home1.inet.tele.dk/theill/hfc.htm« -->
<!--#set var=»I_ARCHIVE« value=»« -->
<!--#set var=»I_LOCALARCHIVE« value=»« -->
<!--#set var=»I_PLATFORM« value=»Windows 95/NT« -->
<!--#set var=»I_STATUS« value=»Freeware« -->
<!--#set var=»I_DESCRIPTION« value=»Эта великолепная утилита, котороя
позволит вам создать цветовое перетекание в тексте любым цветом. Достаточно
нажать несколько кнопок.« -->

<!--#include virtual=»_item.html« -->

<!--#include virtual=»_foot.html" -->

Данный пример замечательно иллюстрирует передачу параметров вставляемым файлам, возможность использования вложенного SSI, а также работу с условными операторами. В случае, если потребуется изменить внешний вид этих страниц, достаточно поменять всего три файла. Тут же весь раздел приобретет новый вид. Или можно, отредактировав один единственный файл отключить показ всех картинок в разделе.

 

Интересное

Пишим на .Net Framework
Доброго времяни суток, вам. Сейчас мы обсудим интересную тему для Win С++ программиста, а именно возможность и актуальность использования платформы .NET Framework. До сих пор не умолкают споры...
Подробнее...
Диски, разделы, буквы...
Вот, не кажется мне MS Windows такой дружественной, как утверждают её пользователи. Ничего удивительного, впрочем: сам я её пользователем практически не являюсь, и сталкиваюсь с ней...
Подробнее...
Обновление контроллеров...
АннотацияВ статье рассматриваются обновления контроллеров домена Windows 2000 до Windows Server 2003 и добавления контроллеров домена под управлением Windows Server 2003 в домен Windows...
Подробнее...
Как узнать размер базы...
В этой небольшой статье вы узнаете, как получить размер вашей базы данных (БД) MySQL используя язык программирования PHP.Для начала нам потребуется простая функция formatfilesize(), которая будет...
Подробнее...
"Грабим" странички
С аудиограбберами знакомы все. Нам предстоит сделать свой собственный граббер информации из Интернета. Нам понадобится подопытный кролик, на роль которого я предлагаю выбрать сайт...
Подробнее...
Основы файловой системы...
Сегодня мы заглянем в дебри файловой системы WindowsXP. Что такое файловая система — это организация хранения Ваших файлов на жестком (или любом другом диске). На разных видах дисков в разных...
Подробнее...
Выбираем лучший способ...
Те, кто рассматривает проблемы «одомашнивания» кинотеатра всерьез, при покупке AV-аппарата уделяют больше внимания не передней, а задней панели, то есть коммутационным возможностям. При этом упор...
Подробнее...
БИЗНЕС В ИНЕТРНЕТЕ
Интернет — один из самых молодых на данный момент рекламоносителей. Преимущественная особенность интернет-рекламы состоит в легком воздействии на определенные узкие целевые аудитории, что просто...
Подробнее...
Массовое удаление...
Нередко для повышения производительности компьютера (например, перед запуском ресурсоемкого приложения или игрушки) приходится прибегать к нетривиальному, но действенному методу — к...
Подробнее...
Скрипт показа баннеров на PHP4
Скрипты показа баннеров, изложенные в этой статье довольно элементарны.Описания баннеров, количество кликов и показов хранится в текстовом файле, поэтому наличия mysql не требуется.Для начала...
Подробнее...