Web-mastering: портал вебмастеров (web-мастеров) о web-дизайне, web-программировании, раскрутке; статьи по веб-дизайну, веб-программированию для вебмастеров
Эта статья является
логическим продолжением публикации
"Практическое применение PERL-скриптов
или Построение сайта по единому
шаблону с использованием SSI и PERL".
Доступной по адресу http://rsw.mastak.com/main.shtml?dir=pub&file=ppps.
Опубликованной также в IZ-Gold6.
В вышеуказанной статье
предлагалось вынести все ссылки вашего
сайта в отдельный файл. И производить
его вставку в остальные страницы
сервера. Рассматривались реализации с
помощью фреймов и на основе SSI. С
обсуждением их достоинств и
недостатков.
А напоследок предлагался
вариант построения сайта на основе
одного файла-шаблона. Ведь гораздо
эффективнее вставлять наши страницы в
один файл-шаблон, в котором находятся
все часто используемые элементы:
ссылки, баннеры и т.д. В качестве
примера приводился скрипт на PERL.
Однако в самом простом случае,
который описывался в статье, можно
обойтись и без использования PERL.
Имеется ввиду вариант, когда вы
передаете в строке запроса только одно
значение - имя вставляемой страницы.
Итак, решение четвертое (в
продолжение нумерации вышеуказанной
статьи): Простое и эффективное -
использовать SSI с обработкой строки
запроса. Имеем все преимущества
третьего решения, то есть не зависит от
браузера пользователя, так как
выполняется сервером, не портит дизайн,
так как не содержит фреймов с полосками
прокрутки. Позволяет использовать один
файл-шаблон для построения всего сайта.
При этом отпал один минус -
необходимость в использовании PERL.
А выглядит решение очень
просто, в том месте где необходимо
вставить файл (на основании строки
запроса), необходимо написать
следующее: <!--#include virtual='${QUERY_STRING}' -->
Все ссылки при этом выглядят
аналогично примеру три. Например : http://www.mysite.com/wellcom.shtml?home.html
Если предполагается вставка
фалов одного типа (с одним расширением,
например, HTML). То расширение файла в
строке запроса можно опустить. А
команду вставки файла преобразовать
следующим образом: <!--#include virtual='${QUERY_STRING}.html'
-->
И адреса примут вид (к примеру): http://www.mysite.com/wellcom.shtml?home
Как видите, все очень просто.
Это изящное решение можно
использовать при построении простых
сайтов, когда не требуется глубокая
обработка строки запроса.