nginx-0.7.59

Kirill A. Korinskiy catap+nginx at catap.ru
Tue May 26 14:23:36 MSD 2009


At Tue, 26 May 2009 14:03:18 +0400,
"Dmitry Dedukhin" <dedukhin at mail.ru> wrote:
> 
> ИМХО,
> 
> По моим наблюдениям тенденции развития сайтостроения свидетельствуют о том, 
> что статичные сайты становятся всё менее и менее интересны.
> Статичный сайт в моём понимании - это сайт, большинство страниц которого 
> можно полностью закэшировать, соответственно обновляя страницу пользователь 
> постоянно видит одну и ту же страницу, взятую из кэша, без каких либо 
> изменений, что, согласитесь, скучно..
> Большинство современных сайтов (опять же по моим наблюдениям) - это 
> динамичные сайты, т.е. на таком сайте показывается, авторизован пользователь 
> или нет, есть некая ротация блоков или контента внутри блоков и т.п.
> Я думаю, что SSI в nginx с возможностью подзапросов идеально подходит на 
> роль "шаблонизатора второго уровня", т.е. может производить определенные (не 
> большие, но всё же вполне достаточные) действия для придания закэшированной 
> странице некоторой динамики.
> А для того, чтобы быть "шаблонизатором второго уровня" по моему мнению 
> достаточно нескольких простейших функций:
> 1. Выполнение подзапросов к бэкенду
> 2. Простейший анализ результатов запроса
>   - проверка переменных (с помощью операций =, !=, >, <, >= и <=)
>   - вложенные условия
>   - циклы (опционально)
> 
> Про вложенные условия хочу пояснить на примере, который достаточно часто 
> встречается в реальной жизни:
> 
> <!--# include virtual="/get_user_info" wait="yes" -->
> <!--# if expr="$User_is_auth = 1" -->
>     ...auth user part1 of html code...
>     <!--# if expr="$User_is_moder = 1" -->
>         ...moder part of html code...
>     <!--# endif -->
>     ...auth user part2 of html code...
> <!--# else -->
>     ...not auth user part of html code...
> <!--# endif -->
> 

а что мешает в /get_user_info ставить две переменные user_is_auth и
user_is_moder? Тогда вам не нужны два условия.

-- 
wbr, Kirill





More information about the nginx-ru mailing list