Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[2]: nginx-0.7.8
Hello Igor,
Wednesday, August 6, 2008, 8:07:38 PM, you wrote:
> On Wed, Aug 06, 2008 at 08:05:52PM +0700, Denis F. Latypoff wrote:
>> Hello Igor,
>>
>> Wednesday, August 6, 2008, 7:14:36 PM, you wrote:
>>
>> > On Wed, Aug 06, 2008 at 06:59:11PM +0700, Denis F. Latypoff wrote:
>>
>> >> Hello Igor,
>> >>
>> >> Wednesday, August 6, 2008, 5:59:03 PM, you wrote:
>> >>
>> >> > On Wed, Aug 06, 2008 at 02:26:12PM +0400, Maxim Dounin wrote:
>> >>
>> >> >> On Wed, Aug 06, 2008 at 01:43:15PM +0400, Igor Sysoev wrote:
>> >> >>
>> >> >> [...]
>> >> >> >>> А вот что IMHO имеет смысл сделать - это last-modified возвращать
>> >> >> >>> как
>> >> >> >>> максимум из mtime исходного документа и шаблона (-ов).
>> >> >> >>
>> >> >> >>Да, это имеет смысл сделать, но при условии, что у xml есть
>> >> >> >>last-modified.
>> >> >> >
>> >> >> >А как быть с параметрами ?
>> >> >>
>> >> >> Если они берутся из агрументов - то очевидно вообще никак, url
>> >> >> будет другой. Если из каких-то других мест или непосредственно из
>> >> >> конфига - то сложнее, ибо по хорошему надо ещё и учитывать mtime
>> >> >> конфига, но это может выйти боком.
>> >> >>
>> >> >> Я думаю что следует забить, параметры человек конфигурит сам и
>> >> >> имеет возможность прописать expire так как считает нужным.
>> >>
>> >> > В общем, на данный момент я вижу две проблемы:
>> >> > 1) параметры,
>> >> > 2) import'ы и include'ы в XSLT. Насколько я вижу, в скомплированном
>> >> > шаблоне нет имён исходных файлов и откуда брать время модификции -
>> >> > непонятно.
>> >>
>> >> static void
>> >> ngx_http_xslt_last_modified(ngx_http_request_t *r, xsltStylesheetPtr s)
>> >> {
>> >> ngx_file_info_t fi;
>> >>
>> >> if (ngx_file_info(s->doc->URL, &fi) != -1)
>> >> {
>> >> ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
>> >> "%s: %d", s->doc->URL, ngx_file_mtime(&fi));
>> >> }
>> >>
>> >> for (s = s->imports; s; s = s->next) {
>> >> ngx_http_xslt_last_modified(r, s);
>> >> }
>> >> }
>>
>> > Это уже лучше. А как там обстоят дела с относительными именами ?
>>
>> В моих тестах, как бы я не импортил "/absolute/path/global.xsl" or
>> "../global.xsl", s->doc->URL всегда абсолютный...
> Это хорошо, а как быть с include'ами ?
include'ы у меня тоже NULL, как и у Максима Дунина.
Предлагаю забить на них.
А еще есть конструкции, типа
<xsl:variable name="included_doc" select="document('/etc/passwd.xml')" />
<xsl:template match="/">
<xsl:value-of select="$included_doc/node1/node2" />
</xsl:template>
это как бы тоже include, предлагаю и на него забить.
--
Best regards,
Denis mailto:denis@xxxxxxxxxx
|