Get ngx_http_request_t as a char array

Tigran Bayburtsyan tigran.bayburtsyan at
Mon Mar 2 09:07:45 UTC 2015

Hi All.
I've asked this question, and didn't get any solution for this.
So I decided to write my own module to solve my own problem :)

Checkout my module
, and let me know if you will have some suggestions for it.

Maxim Dounin.
Thanks for your response.
To transfer Request into a char * array I've crated functionality for it in
this module.
Let me know if it works wrong for you.


-----Original Message-----
From: nginx-devel-bounces at [mailto:nginx-devel-bounces at]
On Behalf Of Maxim Dounin
Sent: Friday, February 27, 2015 4:24 PM
To: nginx-devel at
Subject: Re: Get ngx_http_request_t as a char array


On Fri, Feb 27, 2015 at 02:56:46PM +0400, Tigran Bayburtsyan wrote:

> Hi.
> I'm trying to make a smart logging module for Nginx and I need to get 
> all HTTP request from client as a string (char *).
> I know that ngx_http_request_t contains all HTTP request data , but I 
> don't need to make a loop through all headers_in parameters or request 
> structure parameters.
> I want to get all request with body as a char * array, like Nginx is 
> receiving from tcp socket.

There are two problems here:

- nginx is not receiving a request as a string from tcp socket,
  even if you talk about headers only;

- consequently, it is not available as a string within nginx.

Maxim Dounin

nginx-devel mailing list
nginx-devel at

This email has been checked for viruses by Avast antivirus software.

More information about the nginx-devel mailing list