Практика
ключения на стороне сервера (SSI) - это простой язык сценариев на стороне сервера, используемый почти исключительно для Интернета. Как следует из названия, его основное использование - динамическое включение содержимого одного файла в другой, когда последний обслуживается веб-сервером.
SSI в основном используется для «вставки» содержимого одного или нескольких файлов в другой. Например, файл (любой типа,
<! - # include virtual = "../ quote.txt" ->
С одним изменением
Для того , чтобы веб - сервер в конфигурации по умолчанию , чтобы распознать SSI с поддержкой HTML - файл и , следовательно , выполнять эти инструкции, файл должен заканчиваться
SSI наиболее подходит для простых задач автоматизации; более сложная обработка на стороне сервера часто выполняется с помощью одного из более сложных языков программирования Perl, PHP, ASP, JSP, CFML, Python и Ruby.
Высокая
Низкий
SSI имеет простой синтаксис:
директива | параметры | Описание | пример |
---|---|---|---|
include | файл, прямой или виртуальный | Это, вероятно, наиболее используемая директива SSI, позволяющая включать содержимое одного документа в другой. Файл или виртуальные параметры определяют файл (HTML-страницу, текстовый файл, скрипт и т. Д.), Который будет включен. Параметр file определяет включаемый файл относительно пути к документу; виртуальный параметр определяет включаемый файл относительно корня документа. | <!--#include virtual="header.html"--> |
exec | CGI или CMD | Эта директива выполняет программу, скрипт или команду оболочки на сервере. параметр cmd указывает серверную команду; параметр cgi указывает путь к скрипту CGI. PATH_INFO и QUERY_STRING текущего сценария SSI будут переданы в сценарий CGI. «include virtual» следует использовать вместо «exec cgi». | <!--#exec cgi="/cgi-bin/foo.cgi"--> или <!--#exec cmd="ls -l"--> |
echo | var | Эта директива отображает содержимое указанной переменной среды HTTP. Переменные включают HTTP_USER_AGENT, LAST_MODIFIED и HTTP_ACCEPT. | <!--#echo var="REMOTE_ADDR" --> |
config | timefmt, sizefmt или errmsg | Эта директива настраивает форматы отображения для даты, времени, размера файла и сообщения об ошибке (возвращается при сбое команды SSI). | <!--#config timefmt="%y %m %d" --> или <!--#config sizefmt="bytes" --> или <!--#config errmsg="SSI command failed!" --> |
flastmod или fsize | файл или виртуальный | Эти директивы отображают дату последнего изменения указанного документа или размер указанного документа. Файл или виртуальные параметры определяют используемый документ. Параметр file определяет документ относительно пути к документу; виртуальный параметр определяет документ относительно корня документа. | <!--#flastmod virtual="index.html"--> или <!--#fsize file="script.pl"--> |
printenv | Эта директива выводит список всех переменных и их значений, включая переменные среды и определяемые пользователем переменные. У него нет атрибутов. | <!--#printenv --> |
директива | параметры | Описание | пример |
---|---|---|---|
if | expr | Используется для тестов условий, которые могут определять и генерировать несколько логических страниц на одной физической странице. | <!--#if expr="${Sec_Nav}" --> <!--#include virtual="secondary_nav.txt" --> <!--#endif --> |
elif | expr | Служит той же цели, что и дальнейшее создание условий в языках программирования. | <!--#if expr="${Sec_Nav}" --> <!--#include virtual="secondary_nav.txt" --> <!--#elif expr="${Pri_Nav}}"> <!--#include virtual="primary_nav.txt" --> <!--#endif --> |
else | Если ни одна из директив if и elif не улавливает текущее состояние, то здесь все должно произойти. | <!--#if expr="${Sec_Nav}" --> <!--#include virtual="secondary_nav.txt" --> <!--#else --> <!--#include virtual="article.txt" --> <!--#endif --> |
|
endif | Прекращение условной конструкции. | Смотрите выше, например. |
Включения на стороне клиента - это HTML-включения, достигаемые на стороне клиента посредством использования фреймов, IFrames, JavaScript или JavaScript с Ajax-запросами. Эти методы страдают от недостатков, отсутствующих на стороне сервера: они полагаются на поддержку клиентом своих соответствующих технологий и, в случае фреймов и фреймов, менее доступны.
Комментарии
Оставить комментарий
информационная безопасность - Криптография и Криптоанализ. Стеганография. Защита Информации
Термины: информационная безопасность - Криптография и Криптоанализ. Стеганография. Защита Информации