Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Ошибка в ssi дирек тиве echo (nginx/0.7.61)
Hello!
On Thu, Jul 16, 2009 at 09:08:16AM +0600, Руслан Шарипов wrote:
> Утро доброе.
>
> Есть файл:
>
> [root@alpha /hd1/users/i5039/www/ssi]# cat index.shtml
> <!--#include virtual="/ssi/config.shtml" -->
> <!--#echo var="testvar" -->
>
> и файл
>
> [root@alpha /hd1/users/i5039/www/ssi]# cat config.shtml
> test ssi begin
> <!--#set var="testvar" value="true" -->
> test ssi end
>
> при запросе http://domainname/ssi/index.shtml
>
> получаем ответ:
> test ssi begin test ssi end (none)
>
> как видим ssi директива include отработала успешно (текст test ssi
> begin и test ssi end "заинклюдился"), а вот переменная testvar
> почему-то не проинициализировалась (echo вернул none), данная проблема
> возникла после обновления с линейки 0.6 (конкретно после какой версии
> не помню)
Include'ы в ssi nginx'ом обрабатываются параллельно. Если вы
хотите контроллировать последовательность их выполнения -
используйте параметр wait. Подробности тут:
http://sysoev.ru/nginx/docs/http/ngx_http_ssi_module.html
В 0.7.25 была изменена обработка подзапросов. Ранее
существовавший код фактически приводил к неявному wait для
статических файлов, и поэтому приведённый ssi работал как
ожидается. Теперь не приводит, wait надо указывать явно.
Maxim Dounin
|