### Addition妯″潡
This module adds responses of other locations before and after the current location's response.
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 unkown 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
**syntax:***add_before_body uri*
**default:***no*
**context:***http, server, location*
Directive adds content of uri before the response body, issued as a result of the work of the assigned subrequest.
### add_after_body
**syntax:***add_after_body uri*
**default:***no*
**context:***http, server, location*
Directive adds content of uri after the response body, issued as a result of the work of the assigned subrequest.
### addition_types
**syntax:***addition_types mime-type [mime-type ...]*
**default:***text/html*
**context:***http, server, location*
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](http://sysoev.ru/nginx/docs/http/ngx_http_addition_module.html "http://sysoev.ru/nginx/docs/http/ngx_http_addition_module.html")
- 主要文档
- Nginx功能概述
- 为什么选择Nginx
- Nginx安装
- 运行和控制Nginx
- 配置符号参考
- 优化 Nginx
- 常见问题(FAQ)
- 调试 nginx
- 核心模块
- Nginx主模块
- Nginx事件模块
- 基本模块
- http核心模块
- HttpIndex模块
- HttpAccess模块
- HttpAuthBasic模块
- HttpAutoindex模块
- Browser模块
- Charset模块
- HttpEmptyGif模块
- HttpFcgi模块
- Geo模块
- HttpGzip模块
- HttpHeaders模块
- HttpIndex模块
- HttpReferer模块
- HttpLimit zone
- HttpLimitReqest模块
- HttpLog模块
- map
- Memcached
- HttpProxy模块
- HttpRewrite模块
- HttpSSI模块
- HttpUserId
- 其他模块
- Addition模块
- EmbeddedPerl
- flv
- HttpGzipStatic
- RandomIndex
- HttpGeoIP
- HttpRealIp
- HttpSSL
- StubStatus模块
- HttpSubstitution
- HttpDav模块
- GooglePerftools
- HttpXSLT
- HttpSecureLink
- HttpImageFilter
- mail模块
- MailCore
- MailAuth
- MailProxy
- MailSSL
- 安装
- nginx在windows上的安装
- nginx在freebsd上的安装
- nginx在ubuntu上的安装
- nginx在fedora上的安装
- nginx php-fpm安装配置
- 配置示例和方法
- 完整例子
- 完整例子2
- 虚拟主机
- 负载均衡
- nginx防盗链
- HWLoadbalancerCheckErrors