nginx向响应内容中追加内容(ngx_http_addition_module模块)

ngx_http_addition_module在响应之前或者之后追加文本内容,比如想在站点底部追加一个js或者css,可以使用这个模块来实现,这个模块和淘宝开发的nginx footer模块有点类似,但是还是有不同. 这个模块需要依赖子请求,nginx footer依赖nginx写死的配置. 1. 安装nginx
# wget http://nginx.org/download/nginx-1.4.2.tar.gz
# tar -xzvf nginx-1.4.2.tar.gz
# cd nginx-1.4.2
#  --prefix=/usr/local/nginx-1.4.2 --with-http_stub_status_module --with-http_addition_module
# make
# make install
如果你已经安装了nginx,只想增加模块,请参考ttlsa以前的文章 如何安装nginx第三方模块 2. 指令(Directives) 语法:     add_before_body uri; 默认值:     — 配置段:     http, server, location 发起一个子请求,请求给定的uri,并且将内容追加到主题响应的内容之前。 语法:     add_after_body uri; 默认值:     — 配置段:     http, server, location 发起一个子请求,请求给定的uri,并且将内容追加到主题响应的内容之后。 syntax: addition_types mime-type ...; default: addition_types text/html; context: http, server, location 这个指令在0.7.9开始支持,指定需要被追加内容的MIME类型,默认为“text/html”,如果制定为*,那么所有的 3. nginx配置addition 3.1 配置nginx.conf
server {
    listen       80;
    server_name  www.ttlsa.com;

    root /data/site/www.ttlsa.com;    

    location / {
        add_before_body /2013/10/header.html;
        add_after_body  /2013/10/footer.html;
    }
}
3.2 测试 以下三个文件,对应请求的主体文件和add_before_body、add_after_body对应的内容
# cat /data/site/test.ttlsa.com/2013/10/20131001_add.html 
<html>
<head>
<title>I am title</title>
</head>
<body>
ngx_http_addition_module
</body>
</html>

# cat /data/site/test.ttlsa.com/2013/10/header.html 
I am header!

# cat /data/site/test.ttlsa.com/2013/10/footer.html 
footer - ttlsa
访问结果如下,可以看到20131001_add.html的顶部和底部分别嵌入了子请求header.html和footer的内容。
# curl test.ttlsa.com/2013/10/20131001_add.html           
I am header!
<html>
<head>
<title>I am title</title>
</head>
<body>
ngx_http_addition_module
</body>
</html>
footer - ttlsa
4. 结束语 addition模块与上节上节nginx sub替换响应内容模块应用场景有点相同,具体怎么使用,大家结合实际情况来使用.欢迎大家继续访问运维生存时间. 转载请注明来自运维生存时间:http://www.ttlsa.com/html/3294.html

转载于:https://my.oschina.net/766/blog/211086

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值