mod_proxy_fdpass
fdpass external process support module for mod_proxy
Extension
mod_proxy_fdpass.c
proxy_fdpass_module
Available for unix in version 2.3 and later

This module requires the service of mod_proxy. It provides support for the passing the socket of the client to another process.

`mod_proxy_fdpass` uses the ability of AF_UNIX domain sockets to pass an open file descriptor to allow another process to finish handling a request.

The module has a `proxy_fdpass_flusher` provider interface, which allows another module to optionally send the response headers, or even the start of the response body. The default `flush` provider disables keep-alive, and sends the response headers, letting the external process just send a response body.

In order to use another provider, you have to set the `flusher` parameter in the ProxyPass directive.

At this time the only data passed to the external process is the client socket. To receive a client socket, call recvfrom with an allocated `struct cmsghdr`. Future versions of this module may include more data after the client socket, but this is not implemented at this time.

mod_proxy