Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Можно предложить множество решений, которые по сути будут являться лишь различными комбинациями двух «полярных» приёмов. Давайте рассмотрим эти два «полярных» решения.
Ограничение доступа средствами SSI
Проблему можно решить, используя только средства SSI. Для этого воспользуемся тем, что переменные окружения основного документа доступны и вставляемому документу.
Давайте создадим в основном документе переменную-флажок:
<!--#set var="SSI_FLAG" value="YES" -->
<!--#include virtual="head.sthml" -->
<p>Содержимое страницы</p>
</body>
</html>
А во вставляемом документе проанализируем, установлен ли флаг:
<!-- файл шапки head.shtml -->
<!--#if expr="$SSI_FLAG" -->
<html>
<head>
<title>Название</title>
</head>
<body>
<h1>Название</h1>
<hr>
<--#else -->
<html>
<head><title>ERROR 999</title></head>
<body><h1>Документ не доступен</h1></body>
</html>
<!--#endif -->
Теперь, если клиент случайно или нарочно запросит напрямую документ head.shtml, то процессор SSI не обнаружит переменную окружения SSI_FLAG, сработает ветка else и посетитель получит сообщение о загадочной ошибке 999.
Если же документ head.shtml используется для включения, то он обнаружит флаг, предварительно установленный нами.