Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #27, ФЕВРАЛЬ 2003 г.

SSI - НЕ ТОЛЬКО КИРПИЧИКИ ДЛЯ САЙТА

Pony (pony@xakep.ru)

Спецвыпуск Xakep, номер #027, стр. 027-036-2


Теперь посмотрим, какие SSI-инструкции ты можешь использовать.

КОНФИГУРИМ SSI

CONFIG помогает настроить формат вывода сообщений об ошибке (errmsg), формат вывода информации о размере файла (sizefmt) и времени (timefmt).

Синтаксис:

<!--#config output = string -->.

Пример:

<!--#config errmsg="Ошибка ssi, пишите <a href=mailto:zero@null.ru>автору</a>"-->

В случае возникновения ошибки в любой SSI-инструкции в этом файле на экран выведется сообщение: Ошибка ssi, пишите автору. Максимальный размер сообщения об ошибке 1024 байта.

Инструкция <!--#config sizefmt="abbrev"--> позволит вывести тебе размер файла в килобайтах, а <!--#config sizefmt="bytes"--> - в байтах.

И, наконец, инструкция <!--#config timefmt="%d.%m.%Y %H:%M:%S"--> позволит вывести информацию о дате и времени модификации файла в читабельном виде: 20.07.2002 16:31:33.

А вот перечень всех параметров, используемых в config timefmt:

Формат

Описание

Пример

%a

Аббревиатура названия дня недели

Sun

%A

Полное название дня недели

Sunday

%b

Аббревиатура названия месяца

Jan

%B

Полное название месяца

January

%d

День месяца

01 (не 1)

%D

Дата в формате "%m/%d/%y"

01/31/90

%e

День месяца

1

%H

Часы в 24-часовом формате

13

%I

Часы в 12-часовом формате

01

%j

День года

235

%m

Номер месяца

01

%M

Минуты

03

%p

AM|PM

AM

%r

Время в формате "%I:%M:%S %p"

11:35:46 PM

%S

Секунды

34

%s

Время в секундах с 01.01.1970

957228726

%T

Время в формате "%H:%M:%S"

14:05:34

%U

Неделя года

49

%w

Номер дня недели

5

%y

Год в формате ГГ

95

%Y

Год в формате ГГГГ

1995

%Z

Временная зона

MSK

ECHO - ВЫВОДИМ ПЕРЕМЕННЫЕ СЕРВЕРА

SSI-инструкции позволят тебе выводить переменные сервера (если для тебя словосочетание переменные сервера не пустой звук) в html-файл. Синтаксис таков:

<!--#echo var = VariableName -->. Для разных серверов список переменных разный, но некоторые из них могут быть общими.

Например, <!--#echo var="HTTP_REFERER"--> выведет адрес страницы, с которой ты пришел, а <!--#echo var="HTTP_USER_AGENT"--> - кодовое название твоего браузера.

Есть еще одна SSI-инструкция, которая позволяет выводить все переменные сервака:

<!--#printenv -->.

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

РАЗМЕР ИМЕЕТ ЗНАЧЕНИЕ И ВРЕМЯ ТОЖЕ

Еще одно применение SSI-инструкций - вывод информации о размере и дате изменения указанного файла. Формат вывода конфигурируется инструкцией config. Синтаксис:

<!--#flastmod (fsize) PathType = FileName -->. Например, инструкция <!--#fsize file="ssi.shtml"--> выведет инфу о размере файла ssi.shtml, лежащего в одной директории с текущим файлом, а инструкция <!--#flastmod virtual="ssi.shtml" --> - дату изменения файла ssi.shtml из корневой директории.

ЗАПУСКАЕМ СКРИПТЫ И ПРОГИ

Инструкция запускает внешнюю программу (exec cmd) или cgi-скрипт (exec cgi) и вставляет в содержимое страницы вывод. Синтаксис:

<!--#exec CommandType = CommandDescription -->.

Пример:

<!--#exec cgi="/cgi-bin/test.pl" -->

Назад на стр. 027-036-1  Содержание  Вперед на стр. 027-036-3