ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] Re: [apache-talk] Вопрос про subrequest-ы к знатокам Apache API



IS> On Wed, 6 Feb 2002, Sergey Gershtein wrote:

>> Возникла потребность сделать следующее. Модуль apache делает
>> внутренний subrequest на заданный URI и предпринимает те или иные
>> действия в зависимости от результата. Фокус в том, что этот самый
>> subrequest обрабатывается чем-то внешним (например, cgi-скриптом).

...

6 февраля 2002 г. в 17:23 Игорь Сысоев писал:

IS> Стандартными средствами - никак. Но можно сделать, как делает mod_gzip -
IS> перенаправить вывод во временный файл.

IS> Делаем ap_sub_req_lookup_uri(), дискриптор временного файла
IS> записываем в sub_req->connection->client->fd, предварительно сохранив старое
IS> значение. Выполняем ap_run_sub_req(). Востанавливаем старый дискриптор.


Спасибо, это уже вариант! А если, скажем, я готов проигнорировать тело
ответа, мне нужно лишь проанализировать его http-заголовки? В конце
концов внешнему обработчику нет разницы, давать ответ в теле или в
заголовках. Можно обойтись без временного файла?

Допустим я в sub_req->connection->client->fd загоняю дескриптор
/dev/null, я смогу получить доступ к заголовкам ответа через
ap_table_get(sub_req->headers_out,"xxx") ?  Этого было бы достаточно.

На самом деле таким экстравагантным способом модуль должен получить
ответ (да/нет) от некоторого внешнего скрипта (cgi/php и т.п.).  Может
быть есть другие более правильные подходы к организации подобного
взаимодействия?


С уважением,
Сергей Герштейн 

--
телекоммуникационная компания Урал Релком
тел. (3432) 776440, 598721, факс 594956
mailto:sg@ur.ru  http://ur.ru  http://e1.ru  http://uralweb.ru

=============================================================================
=               Apache-Talk@lists.lexa.ru mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =



 




Copyright © Lexa Software, 1996-2009.