Мощь SSI
SSI - включения на стороне сервера. Это весьма полезная штука для отображения каких-либо данных сервера и пользователя. Часто бывает так, что писать CGI-скрипт гораздо дольше, чем поставить одну директиву в файл. С помощью SSI в HTML-файл можно включить другие файлы и даже некоторые скрипты, в результате чего HTML работает почти как PHP.
Лично я широко использую SSI в шаблонах страниц, благо это просто, они поддерживаются многими бесплатными серверами и бесплатны ;) . Не буду долго распространяться на эту тему, просто дам сводную таблицу по SSI.
Полный (почти) список возможностей SSI с описанием:
| Строка на SSI |
Описание |
|
Вставляет содержимое файла в текущий. Путь указывается относительно текущего каталога (не типа http://...). Содержимое файла не обрабатывается. |
|
Вставляет содержимое файла в текущий. Путь указывается виртуальный, то есть как http://filename.shtml или как /cgi-bin/file.cgi. Так можно вставлять даже CGI-скрипты, при таком синтаксисе они компилируются и результат вставляется куда надо, главное - не забыть прописать return(). |
|
Вставка размера файла |
|
Дата и время последнего изменения файла |
|
Запускает внешнюю программу и вставляет результат в файл
|
|
Запускает скрипт CGI и вставляет результаты его выполнения в файл. Строку запроса передать нельзя.
|
|
Отображает список переменных окружения и отображает их |
|
Устанавливает значение переменной окружения для данной загрузки файла. Интересно, что переменная доступна через Perl. |
Кроме директив, SSI можно еще выводить и условные операторы if, elif и else, надо только не забыть поставить в конце endif. Начало условного выражения обзначается атрибутом expr.
Еще немного хотелось бы сказать о переменных окружения, доступных в PERL: они доступны и в SSI, кроме того, есть еще несколько переменных особых. Вот их список:
| Строка на SSI |
Описание |
|
Корневой каталог сервера |
|
Версия CGI, используемая сервером |
|
Строка запроса |
|
IP-адрес клиента или прокси-сервера |
|
Имя узла клиента или прокси-сервера |
|
Логин пользователя |
|
Имя узла сервера или его IP-адрес |
|
Порт на узле, ожидающий запроса |
|
Протокол работы сервера |
|
Программное обеспечение сервера |
|
Кукисы, установленные сервером |
|
Типы принимаемых броузером данных (MIME) |
|
Список кодировок, воспринимаемых клиентом |
|
Список типов кодирования, принимаемых броузером |
|
Список языков, на которых принимается информация |
|
Имя узла сервера |
|
URL документа, откуда пользователь попал на эту страницу |
|
Данные о броузере клиента |
|
Имя текущего документа |
|
Виртуальный путь к файлу |
|
Строка запроса, где символы облочки экранированы обратными слэшами |
|
Время на сервере |
|
Время по Гринвичу |
|
Дата и время изменения файла |
Дополнительно на данную тему:
SSI в примерах
SSI (часть 1)
SSI (часть 2)
Учебник по SSI (Server Side Includes)
SSI: вкусно и полезно
CGI+SSI - пример счетчика
|