Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[3]: ngx_http_layouts_filter_module
Hi, Igor.
>> По идее всё просто: ПЕРЕД страницей (после HTTP-заголовков видимо)
>> вставить верхний layout (неважно, что после этого будет <head>,
>> <html>..., всё равно ДОСТАТОЧНО нормально работает); и ПОСЛЕ страницы
>> вставить нижний layout.
>>
>> Мне казалось, что вся страница (не заголовки, они вроде как отдельно)
>> хранится в некой переменной (или в указателе, неважно). Поэтому
>> думалось что достаточно ПЕРЕД передачей этой переменной передать
>> верхний layout, а ПОСЛЕ передачи этой переменной передать нижний
>> layout.
>> Развитие "парсить html-ку на тему поиска <html> и вставки верхнего
>> layout'а точно после неё" можно оставить на (далёкое) будущее.
>>
>> Было бы вкусно иметь все фичи: файлы, FastCGI, ответы некоего
>> http-сервера (тело опять же, без заголовков есс-но). Но файлы - это
>> _необходимый_ минимум :-).
>> И ещё: файлы, если они будет кэшированы, должны перечитываться хотя
>> бы по -HUP (чтобы изменения этих файлов были подхвачены).
> Мне кажется, добавлять что-то перед началом ответа в настоящее время
> не стоит - современные браузеры по разному воспринимают ответ с
> DOCTYPE и без него.
Настоятельно просил бы оставить такую возможность, хотя бы и
"выключено по умолчанию". Кому не надо - не включат. В противном
случае вообще пропадает смысл использования - фича вроде бы и будет
(частично), а использовать ВСЁ РАВНО ПРИДЁТСЯ АПАЧ, т.к. там и сверху
и снизу есть. Маразм получится.
Повторюсь - то, что "браузеры воспринимают", на данный момент
приемлемо. Это работает сейчас в mod_layout, и УСТРАИВАЕТ тех кто
ИСПОЛЬЗУЕТ это. А кого не устраивает/не нужно, тот не включает. Или
используют бета-фичу "вставить после <html>" (которую МОЖЕТ БЫТЬ можно
будет реализовать, ЕСЛИ на это будет желание :)).
Короче краеугольная довольно таки вещь - ОБА layout'а (хотя бы
верхний и опционально включался бы).
> В общем, я на данный момент планирую сделать такую функциональность
> post_action:
> 1) post_action /uri
> 2) post_action_pass_body [on | off]
> 3) post_action_types [text/html | */*]
> Аккаунтинг:
> post_action /uri;
> post_action_pass_body off;
> post_action_types */*;
> Добавление в конец ответа:
> post_action /uri;
> post_action_pass_body on;
> post_action_types text/html;
--
engineer
|