Сел писать модуль для nginx и решил начать с того, что казалось попроще :-) В
итоге, изрядно помучавшись, написал фильтр для добавления баннерного кода в
начало и в конец страницы... Но не уверен, что правильно понимаю
технологию.... Потому пара вопросов к тем, кто разбирается во внутренностях
nginx:
1) Можно ли, чтобы в буфере, созданный через ngx_calloc_buf(r->pool), b->pos
указывал на мой статический буффер? Я так понял, что b->memory = 1 для этого
и придумано...
Да.
2) Какие подводные камни могут быть при простом добавлении контента вот в
таком виде (да и вообще, правилен ли подход)? :
ngx_chain_t head, tail, *cur;
...
head.next = in;
...
cur = in;
while (cur->next) cur = cur->next;
cur->next = &tail;
cur->buf->last_buf = 0;
tail->buf->last_buf = 1;
return ngx_http_next_body_filter(r, &head);
Подход правильный. А ничего, что код будет добавляться после </html> ?
Игорь Сысоев
http://sysoev.ru