Я не могу найти его в структуре request_rec *? Есть ли способ, с помощью которого я могу получить доступ к нему в модуле Apache?API для доступа к полю referrer в модуле Apache
Спасибо!
Я не могу найти его в структуре request_rec *? Есть ли способ, с помощью которого я могу получить доступ к нему в модуле Apache?API для доступа к полю referrer в модуле Apache
Спасибо!
Вы должны
#apt-get install apache2-prefork-dev
затем
#apxs2 -gn Somename
mod_Somename.c в вашем SomeName каталог. В этом .c файле содержится request_rec * Структура. если вы хотите попробовать полную ссылку на request_rec * имеет следующую ссылку
http://ci.apache.org/projects/httpd/trunk/doxygen/httpd_8h.html
вы можете получить доступ к request_rec * в входе выходного фильтра/функциях 2.x модуля Apache:
для входных фильтров:
int do_nothing_input_filter(ap_filter_t *f, apr_bucket_brigade *bb, ap_input_mode_t mode, apr_read_type_e block,
apr_off_t readbytes)
{
request_rec *r = f->r;
(...)
}
для выходных фильтров:
apr_status_t my_output_filter_func(ap_filter_t* f, apr_bucket_brigade* bb)
{
request_rec *r = f->r;
(...)
}
структура определена в httpd.h reference of Apache 2.x doxygen documentation
реферер хранится в заголовке запроса, так что вы должны получить реферер оттуда:
const char* referer = apr_table_get(request->headers_in, "Referer");