создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

Server Side Includes (SSI, динамические страницы)

Если страница, расположенная на сайте имеет расширение .shtml или .shtm, она будет расценена сервером, как динамическая. При выдаче страницы сервер будет искать в ней специальные директивы, чтобы заменить их на html-код.

Такая методика называется "server side includes" или "включение на стороне сервера" и часто сокращается до аббревиатуры "SSI". Вы можете почитать подробно об использовании SSI (httpd.apache.org/docs/2.4/howto/ssi.html) на сайте web-сервера Apache (англ).

Безусловно главным применением SSI является сборка сайта из различных блоков. SSI избавляет от необходимости повторять 1 и тот же код на многих страницах сайта. Рассмотрим это на примере подключения заголовка.

Если заголовок (шапка) сайта не меняется, сохраните ее в файле header.inc и положите в директорию /www. Теперь в любую страницу сайта мы можем вставить наш заголовок директивой:

<!--#include virtual=/header.inc-->

Изменив файл header.inc мы изменим заголовок на всех страницах, где он подключен через SSI. Такой метод позволяет отделять тексты страниц от дизайна и упрощает построение сложных сайтов. Теперь взгляните на пример размещения статьи:

<title>Заголовок статьи</title>
<!--#include virtual=/style.css-->
<!--#include virtual=/header.inc-->
Текст статьи
<!--#include virtual=/footer.inc-->

В примере используется подключение нескольких файлов:

  • /style.css - содержит описание css-таблиц для формирования дизайна страниц;
  • /header.inc - содержит заголовок страниц, в частности, логотип;
  • /footer.inc - нижний колонтитул, например, copyright.
  • Подключаемая страница должна располагается в директории /www или /sub/domain для суб-домена. Нельзя подключать страницу по относительному пути наверх: ../ В этом случае вы получите ошибку на месте подключения.

    Правильные подключения:

    <!--#include virtual=page.inc-->
    <!--#include virtual=dir/page.inc-->
    <!--#include virtual=/page.inc-->
    <!--#include virtual=/dir/page.inc-->
    

    Неправильные подключения:

  • файл подключается по относительному пути наверх:

    <!--#include virtual=../page.inc-->

  • файл подключается по пути физического расположения:

    <!--#include virtual=/www/page.inc-->

  • Избежав этих ошибок, можно построить сайт "из кирпичиков" и обновлять его без лишних хлопот.

    Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

    Ваше письмо×
    Free Web Hosting