[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Web - программирование / SSI /

Основы технологии Server Side Includes или SSI

Я хочу рассказать вам об основах технологии server side includes или ssi.
ssi переводится как "включения со стороны сервера". Эта технология помогает сохранить уйму времени при создании сайта и закачке его на сервер. Вообще ssi призвана, насколько это возможно, облегчить работу web-мастера.

Вот, к примеру, вполне реальная ситуация:
У вас есть сайт, который, разумеется, не использует ssi, с числом страниц близким к:, да возьмем хотя бы 50 страниц. Итак, на каждой странице вы, как хороший web-мастер, заботящийся о своих посетителях, разместил текстовое меню. И вдруг по каким-то причинам название какого-то раздела изменилось, а быть может, вам захотелось добавить новый. Что же теперь заново открывать все пятьдесят страниц и переписывать все снова и снова?! В нашем случае это, к сожалению, единственное решение, правда, некоторые хорошие редакторы смогут облегчить эту непосильную ношу (и еще как облегчить!, homesite, например).

Так вот, такой проблемы у вас не произошло бы, еcлu вы использовали технологию ssi. Объясняю: если бы вместо текстового меню на всех страницах было бы написано что-то вроде


<!--#include virtual="/ssi/menu_txt.html" -->


А в файле "(www)/ssi/menu_txt.html" было бы содержание этого меню, то для того, что бы добавить или изменить раздел нужно было бы только поменять содержание всего лишь одного файла menu_txt.html. Как вы, наверно, уже догадались во все страницы вместо "комментария"


<!--#include virtual ="/ssi/menu_txt.html" -->


будет вставлен код из menu_txt.html.


Синтаксис ssi директив.


Синтаксис ssi директив таков:
Все директивы заключаются в комментарии


<!-- :[пробел]-->


, главным отличием ssi директивы от комментария является символ "#" сразу(!) после "<!--". То есть если быть точным, то все директивы ssi заключаются в


<!--#:[пробел]-->


и никак иначе!

Вот список некоторых ssi "функций" (они сразу пишутся после символа "#")

include

Включает текст (код, содержание) указываемого документа/файла в данный документ. Положение файлов на сервере указывается с помощью следующих атрибутов:

file - необходимо указать путь относительно данного документа, то есть включаемый документ/файл должен находиться либо в том же каталоге, что и данный документ, либо каталогами ниже/выше (some_catalog/, ../some_catalog).
virtual - можно указывать как относительный (как в случае с file), так и абсолютный путь (может содержать /some_catolog или ../some_catalog).

include позволяет включать результат работы cgi скриптов, а также обращаться к ним с какой-то заданной строкой запроса. Например
,


<!--#include virtual ="/cgi-bin/script.cgi?action=print&what=ok" -->


set

Устанавливает значение какой-либо переменной. Переменная объявляется с помощью атрибута var, а её значение задается с помощью атрибута value.


<!--#set var="a" value="variable" -->


переменная a будет иметь значение variable.
А
можно и так:


<!--#set var="b" value="var" -->
<!--#set var="c" value="ble" -->
<!--#set var="a" value="${b}ia${c}" -->


Переменная a будет равна varia${c}
Для того, что бы подставить переменную необходимо её заключить в фигурные скобки и перед всем этим поставить $. Если же вы хотите что бы знак доллара ($) отображался просто как символ, и не обозначал переменную, то поставьте перед ним слеш ()

echo

выводит значение переменной, указанной в атрибуте var.


<!--#echo var="a" -->


то есть вместо этого кода вставляется значение переменной a


Примеры использования ssi.


Вот содержание главного документа.
main.html


<!--#set var="title" value="Тестовая страница" -->
<!--#set var="keywords" value="ключевые слова" -->
<!--#set var="description" value="Описание этого документа" -->
<!--#include virtual="head.html" -->

<!--#include virtual="body.html" -->

<!--#set var="copyright" value="copyright ©" -->
<!--#include virtual="down.html" -->


А это содержание включаемых файлов.
head.html


<html>
<head>
<title>Заголовок:<!--#echo var="title" --></title>
<meta http-equiv="content-type" content="text/html">
<meta name="description" content="Описание: < !--#echo var="description" -->">
<meta name="keywords" content="документ, <!--#echo var="keywords" -->, html">
</head>
<body>


body.html


<h3>Тело документа</h3>


down.html


<p align="center"><font size=2>
<!--#echo var="copyright" --></font></p>
</body>
</html>


Как вы смогли убедиться из данного примера, пользоваться ssi не так уж и трудно, и более того очень полезно.


Технические аспекты использования ssi.


Стоит несколько слов сказать о техническом обеспечении, которое необходимо для использования ssi. Если вы просто создадите файл на своем локальном диске с корректными ssi командами и откроете его в вашем браузере, то никаких включений не произойдет, т.к все выражения типа <!-- :. --> для браузера являются чистой воды комментариями. Так называемые "включения" происходят еще на стадии обработки документа сервером, прежде чем послать его пользователю. В нашем случае такого этапа (обработка документа сервером) вообще нет. Так вот для того, что бы вы смогли полностью ощутить все преимущества ssi на своем локальном компьютере, вам нужен "домашний" web-сервер.
И вот еще что: не каждый провайдер, предоставляющий хостинг, поддерживает ssi. Обычно это проблема бесплатных хостингов. Но и некоторые из них, если уж и позволяют использовать ssi, то требуют за это некую плату, например, размещение рекламы на сайте.

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




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Web - программирование / SSI /

SSI - Server-Side Includes - включения на стороне сервера. Практическое использование SSI. Часть 4
21-04-2010   

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

Кол. просмотров: общее - 3069 сегодня - 0

SSI - Server-Side Includes - включения на стороне сервера. Практическое использование SSI. Часть 3
19-04-2010   

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

Кол. просмотров: общее - 2914 сегодня - 0

SSI - Server-Side Includes - включения на стороне сервера. Практическое использование SSI. Часть 2
19-04-2010   

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

Кол. просмотров: общее - 2749 сегодня - 0

SSI - Server-Side Includes - включения на стороне сервера. Практическое использование SSI
19-04-2010   

Первым распространенным применением SSI является внедрение в документ некоего динамического куска разметки... подробнее

Кол. просмотров: общее - 3003 сегодня - 1




  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects