FAQ

Page Discussion History

HttpAdditionModule

Revision as of 17:58, 30 April 2012 by Admin (Talk | contribs)

Contents

Synopsis

This module adds contents of other locations before and after the current location's content.

It is implemented as an output filter, the contents of the main request and subrequests to other locations are not buffered completely and are still sent to the client in a streaming fashion. Because the length of the final response body is unknown while sending the HTTP headers, the HTTP chunked encoding is always used here.

Installation

By default the module is not built, it is necessary to enable its build with

./configure --with-http_addition_module

at compilation time.

Example:

location / {
  add_before_body   /before_action;
  add_after_body    /after_action;
}

Limitations

Note that as of 0.8.17 no contents will be added if the current location is served as a subrequest itself. Consider the following example:

location /foo {
  add_before_body /bar;
}
 
location /bar {
  add_before_body  /baz;
}

Then accessing /foo won't get /baz inserted before the contents of the subrequest /bar.

Also note that at this time, only strings can be used in before/after body locations, not variables. So

location / {
  set $before_action /before_action;
  add_before_body $before_action;
}

will not work as expected (although the configuration file will still load properly).

Directives

add_before_body

ERROR in secure-include.php: could not read the given src URL http://wiki.nginx.org/nginx.org/ngx_http_addition_module/add_before_body.txt

Directive adds content of uri before the response body, issued as a result of the work of the assigned subrequest.

add_after_body

ERROR in secure-include.php: could not read the given src URL http://wiki.nginx.org/nginx.org/ngx_http_addition_module/add_after_body.txt

Directive adds content of uri after the response body, issued as a result of the work of the assigned subrequest.

addition_types

ERROR in secure-include.php: could not read the given src URL http://wiki.nginx.org/nginx.org/ngx_http_addition_module/addition_types.txt

Directive (since 0.7.9) allows you to add text only to locations of the specified MIME-types (defaults to "text/html").

(Before 0.8.17, this directive was mispelled as "addtion_types" in the source. This bug has been fixed in 0.8.17.)

References

Original Documentation