我在 request_rec* 结构中找不到它?有没有办法可以在 Apache 模块中访问它?
谢谢!
引用者存储在请求标头中,因此您应该从那里获取引用者:
const char* referer = apr_table_get(request->headers_in, "Referer");
您可以在 Apache 2.x 模块的输入/输出过滤器函数中访问 request_rec*:
对于输入过滤器:
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;
(...)
}
你应该
#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