Code Monkey home page Code Monkey logo

headers-more-nginx-module's Introduction

Name

OpenResty - Turning Nginx into a Full-Fledged Scriptable Web Platform

Table of Contents

Description

OpenResty is a full-fledged web application server by bundling the standard nginx core, lots of 3rd-party nginx modules, as well as most of their external dependencies.

This bundle is maintained by Yichun Zhang (agentzh).

Because most of the nginx modules are developed by the bundle maintainers, it can ensure that all these modules are played well together.

The bundled software components are copyrighted by the respective copyright holders.

The homepage for this project is on openresty.org.

For Users

Visit the download page on the openresty.org web site to download the latest bundle tarball, and follow the installation instructions in the installation page.

For Bundle Maintainers

The bundle's source is at the following git repository:

https://github.com/openresty/openresty

To reproduce the bundle tarball, just do

make

at the top of the bundle source tree.

Please note that you may need to install some extra dependencies, like perl, dos2unix, and mercurial. On Fedora 22, for example, installing the dependencies is as simple as running the following commands:

sudo dnf install perl dos2unix mercurial

Back to TOC

Additional Features

In additional to the standard nginx core features, this bundle also supports the following:

Back to TOC

resolv.conf parsing

syntax: resolver address ... [valid=time] [ipv6=on|off] [local=on|off|path]

default: -

context: http, stream, server, location

Similar to the resolver directive in standard nginx core with additional support for parsing additional resolvers from the resolv.conf file format.

When local=on, the standard path of /etc/resolv.conf will be used. You may also specify arbitrary path to be used for parsing, for example: local=/tmp/test.conf.

When local=off, parsing will be disabled (this is the default).

This feature is not available on Windows platforms.

Back to TOC

Mailing List

You're very welcome to join the English OpenResty mailing list hosted on Google Groups:

https://groups.google.com/group/openresty-en

The Chinese mailing list is here:

https://groups.google.com/group/openresty

Back to TOC

Report Bugs

You're very welcome to report issues on GitHub:

https://github.com/openresty/openresty/issues

Back to TOC

Copyright & License

The bundle itself is licensed under the 2-clause BSD license.

Copyright (c) 2011-2019, Yichun "agentzh" Zhang (章亦春) [email protected], OpenResty Inc.

This module is licensed under the terms of the BSD license.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Back to TOC

headers-more-nginx-module's People

Contributors

agentzh avatar alberts avatar chipitsine avatar dobe avatar ghedo avatar hnakamur avatar kazeburo avatar lynch1981 avatar mrsorcus avatar piotrsikora avatar somnisomni avatar thibaultcha avatar xiaocang avatar zhuizhuhaomeng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

headers-more-nginx-module's Issues

set_header and clear_header do not work on the first request.

Hello, I am looking for solution to solve the following issues.

Issue

Headers (Sever, X-Page-Speed, X-Upstream) are not removed in the first line
but removed in the subsequent requests

details

my ngnix.conf has the following:

http {
        more_set_headers 'Server: ocapp';
        more_clear_headers 'X-Page-Speed';
        more_clear_headers 'X-Upstream';

The configuration does not work on the first request. https://qa3.x.com. Header information is not changed by the header-more commands.

But the command works on the subsequent requests.

image

random core dumps

it seems somehow r is null. Openresty 1.0.10.48

0 ngx_strncasecmp (s1=0x0, s2=0x1358dab "X-UA-Profile: $uaprofile", n=12) at src/core/ngx_string.c:592
#1 0x00000000004a1267 in ngx_http_set_header_helper (r=, hv=0x1358df0,

value=0x7fff7873d9b0, output_header=0x0, no_create=0)
at ../headers-more-nginx-module-0.17rc1/src/ngx_http_headers_more_headers_out.c:187

#2 0x00000000004a1411 in ngx_http_set_header (r=0x0, hv=0x1358dab, value=0xc)

at ../headers-more-nginx-module-0.17rc1/src/ngx_http_headers_more_headers_out.c:154

#3 0x00000000004a185c in ngx_http_headers_more_exec_cmd (r=0x19e0570, cmd=0x1358628)

directive not allowed in if below server

hi
when i do:
server {
....
if ($http_x_blah){
more_set_input_headers "X-Blah: blah";
}
....
}

i get [emerg]: "more_set_input_headers" directive is not allowed here

seems that below a server directive in an if block the directive is not allowed, is this by intent?

thx, bernd

unknown directive "more_clear_headers"

freebsd 10.3 amd64

nginx -V
nginx version: nginx/1.10.0
built with OpenSSL 1.0.2g 1 Mar 2016
TLS SNI support enabled
configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt='-I /usr/local/include' --with-ld-opt='-L /usr/local/lib' --conf-path=/usr/local/etc/nginx/nginx.conf --modules-path=/usr/local/etc/nginx/modules --sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid --error-log-path=/var/log/nginx-error.log --user=www --group=www --with-file-aio --http-client-body-temp-path=/var/tmp/nginx/client_body_temp --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp --http-proxy-temp-path=/var/tmp/nginx/proxy_temp --http-scgi-temp-path=/var/tmp/nginx/scgi_temp --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi_temp --http-log-path=/var/log/nginx-access.log --with-http_addition_module --with-http_auth_request_module --add-dynamic-module=/usr/ports/www/nginx/work/headers-more-nginx-module-f5559ec --with-http_gzip_static_module --with-http_gunzip_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_stub_status_module --with-http_sub_module --with-pcre --with-http_v2_module --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --without-mail_imap_module --without-mail_pop3_module --without-mail_smtp_module --with-mail_ssl_module --with-http_ssl_module

Performing sanity check on nginx configuration:
nginx: [emerg] unknown directive "more_clear_headers" in /usr/local/etc/nginx/nginx.conf:25

Header not set when used in "location if" with a proxy pass.

I'm having issues getting more_set_headers with running from a location if
if the location that has proxy_pass configured.

I've succesfully set the header from within a location if without the
proxy_pass. In addition I've succesfully had 'return 403;' working in a
location if with proxy_pass.

System Info:

Linux 2.6.32-34-server #77-Ubuntu SMP Tue Sep 13 20:54:38 UTC 2011 x86_64 GNU/Linux
Ubuntu 10.04.3 LTS

nginx version: nginx/1.0.15
built by gcc 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1) 
TLS SNI support enabled
configure arguments: --with-http_ssl_module --with-http_flv_module
                     --with-http_dav_module --with-file-aio
                     --with-http_gzip_static_module --with-http_mp4_module
                     --with-http_stub_status_module
                     --add-module=../ngx_http_auth_pam_module-1.2
                     --add-module=../ngx_http_bytes_filter_module-57365655ee44
                     --add-module=../nginx_upload_module-2.2.0
                     --add-module=../ngx_http_auth_ldap_module-1.0-a3
                     --add-module=../ngx_http_viewcounts_filter_module
                     --add-module=../agentzh-headers-more-nginx-module-3580526

and

Linux 2.6.27-14-generic #1 SMP Mon Aug 31 12:58:38 UTC 2009 x86_64 GNU/Linux
Ubuntu 8.10

nginx version: nginx/1.0.14
built by gcc 4.3.2 (Ubuntu 4.3.2-1ubuntu12) 
TLS SNI support enabled
configure arguments: --with-http_ssl_module --with-http_flv_module
        --with-http_dav_module --with-file-aio
        --with-http_gzip_static_module --with-http_mp4_module
        --with-http_stub_status_module
        --add-module=../ngx_http_auth_pam_module-1.2
        --add-module=../ngx_http_bytes_filter_module-57365655ee44
        --add-module=../nginx_upload_module-2.2.0
        --add-module=../ngx_http_auth_ldap_module-1.0-a3
        --add-module=../agentzh-headers-more-nginx-module-3580526

Works Config:

location / {
    more_set_headers 'Access-Control-Allow-Origin: *';

    set $cluster sfo01;
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_set_header   X-Real-Host $http_host;
    proxy_set_header   X-Source-Cluster $cluster;
    proxy_pass_request_headers on;
    if (!-f $request_filename) {
        proxy_pass  http://haproxy;
        break;
    }
}

Non-Working Config:

location / {
    if ($http_user_agent ~* (foo|bar) ) {
        more_set_headers 'Access-Control-Allow-Origin: *';
    }

    set $cluster sfo01;
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_set_header   X-Real-Host $http_host;
    proxy_set_header   X-Source-Cluster $cluster;
    proxy_pass_request_headers on;
    if (!-f $request_filename) {
        proxy_pass  http://haproxy;
        break;
    }
}

在tengine编译模块失败

春哥,用最新的这个模块编译进tengine 2.1.1时,报如下错误:
/root/source/tengine/headers-more-nginx-module/src/ngx_http_headers_more_headers_in.c
/root/source/tengine/headers-more-nginx-module/src/ngx_http_headers_more_headers_in.c:142:18: error: ‘ngx_http_process_header_line’ undeclared here (not in a function)
ngx_http_process_header_line },
^
/root/source/tengine/headers-more-nginx-module/src/ngx_http_headers_more_headers_in.c:142:18: error: missing initializer for field ‘handler’ of ‘ngx_http_headers_more_set_header_t’ [-Werror=missing-field-initializers]
In file included from /root/source/tengine/headers-more-nginx-module/src/ngx_http_headers_more_headers_in.h:11:0,
from /root/source/tengine/headers-more-nginx-module/src/ngx_http_headers_more_headers_in.c:13:
/root/source/tengine/headers-more-nginx-module/src/ngx_http_headers_more_filter_module.h:53:45: note: handler’ declared here
ngx_http_headers_more_set_header_pt handler;
^
cc1: all warnings being treated as errors
make[1]: *** [objs/addon/src/ngx_http_headers_more_headers_in.o] 错误 1
make[1]: Leaving directory `/root/source/tengine/src/tengine-2.1.1'
make: *** [build] 错误 2

编译器为4.8.2,请春哥指点

Compiling dynamic module

I'm trying to compile the module, but in the second step, get the following error.

root@machine:~/build/nginx-1.10.0# make modules 
make -f objs/Makefile modules
make[1]: Entering directory '/root/build/nginx-1.10.0'
make[1]: Nothing to be done for 'modules'.
make[1]: Leaving directory '/root/build/nginx-1.10.0'

First step:

root@machine:~/build/nginx-1.10.0# ./configure --add-dynamic-module=../headers-more-nginx-module-0.29

...
checking for openat(), fstatat() ... found
checking for getaddrinfo() ... found
configuring additional dynamic modules
adding module in ../headers-more-nginx-module-0.29
 + ngx_http_headers_more_filter_module was configured
checking for PCRE library ... found
checking for PCRE JIT support ... found
checking for md5 in system md library ... not found
checking for md5 in system md5 library ... not found
checking for md5 in system OpenSSL crypto library ... found
checking for sha1 in system md library ... not found
checking for sha1 in system OpenSSL crypto library ... found
checking for zlib library ... found
creating objs/Makefile

Configuration summary
  + using system PCRE library
  + OpenSSL library is not used
  + md5: using system crypto library
  + sha1: using system crypto library
  + using system zlib library
...

After the usual make library in objs folder does not appear.

Unable to filter Content-Type: text/html; charset=utf-8

Hello,
I'm trying to add header with this command:
more_set_headers -s 200 -t "text/html" "Test: test-value";
and I see next response content type:
Content-Type: text/html; charset=utf-8
but dont see my header :(
without -t option all works as expected.
Help me please!

Broken compilation against NginX-1.9.6

Actually, according to NginX changelog, there are no such changes between 1.9.5 and 1.9.6, so, probably, compilation of 0.27 tarball is broken even against 1.9.5.

As far, as I understand, the reason is 42d8019#diff-2881ed54493778a1cf46467607547e96R142

And the error message during compilation is:

make -j3 -s -l2 'LINK=x86_64-pc-linux-gnu-gcc -Wl,-O1,--as-needed' OTHERLDFLAGS=-Wl,-O1,--as-needed
/var/tmp/portage/www-servers/nginx-1.9.6/work/headers-more-nginx-module-0.27/src/ngx_http_headers_more_headers_in.c:142:18: error: 'ngx_http_process_header_line' undeclared here (not in a function)
                  ngx_http_process_header_line },
                  ^
objs/Makefile:2775: recipe for target 'objs/addon/src/ngx_http_headers_more_headers_in.o' failed
make[1]: *** [objs/addon/src/ngx_http_headers_more_headers_in.o] Error 1
Makefile:8: recipe for target 'build' failed
make: *** [build] Error 2

0.26 release re-tagged

upstream

Please don't re-roll releases. Always increment versions and issue a new release. Re-rolling causes grief for all downstream consumers and creates confusion among the public about which release is legitimate. It is a genuine security and integrity issue.

Thanks

Mime-type filter not working in Tengine

Hello - I am unsure whether this is an issue with Tengine or your module but...

I compiled tengine with the headers-more module and regular 'more_set_headers' directives work but those with mime-type of the form "more_set_headers -t 'text/html' 'X-Blah: blah blah' are not set by the module. I have moved the module to the top of those compiled but still no joy. Simply removing the "-t 'text/html'" from the directive works.

Question about module post configuration and handler function

Hi!
I'm new to nginx and currently I'm studying using Your's modules.
I would be really appreciate if you could explain me what next statements mean :

static ngx_int_t
ngx_http_headers_more_post_config(ngx_conf_t *cf)
{
...
if (ngx_http_headers_more_prev_cycle != ngx_cycle) {
ngx_http_headers_more_prev_cycle = ngx_cycle;
multi_http_blocks = 0;

} else {
    multi_http_blocks = 1;
}  

ph = cmcf->phase_engine.handlers;
....
}

static ngx_int_t
ngx_http_headers_more_handler(ngx_http_request_t *r)
{
....
if (!hmcf->postponed_to_phase_end) {
ngx_http_core_main_conf_t *cmcf;
ngx_http_phase_handler_t tmp;
ngx_http_phase_handler_t *ph;
ngx_http_phase_handler_t *cur_ph;
ngx_http_phase_handler_t *last_ph;

    hmcf->postponed_to_phase_end = 1;

    cmcf = ngx_http_get_module_main_conf(r, ngx_http_core_module);

    ph = cmcf->phase_engine.handlers;
    cur_ph = &ph[r->phase_handler];
    last_ph = &ph[cur_ph->next - 1];

    if (cur_ph < last_ph) {
        dd("swaping the contents of cur_ph and last_ph...");

        tmp = *cur_ph;

        memmove(cur_ph, cur_ph + 1,
                (last_ph - cur_ph) * sizeof (ngx_http_phase_handler_t));

        *last_ph = tmp;

        r->phase_handler--; /* redo the current ph */

        return NGX_DECLINED;
    }
}

...
}

Great thank for your work!

setting multiple input headers in if does not work

hi

the lines below work as expected and sets two headers (i know, this could be done in one line, this is just for demonstration):

more_set_input_headers "X-One: one";
more_set_input_headers "X-Two: two";

in the example below only the directive in the last if statement is applied:

if ($http_x_one){
  more_set_input_headers "X-One: one";
}
if ($http_x_two){
  more_set_input_headers "X-Two: two";
}

my use-case ist that i want to replace headers, but only if they already exist, ist this somehow possible with this module?

thx, bernd

Add Windows Support

I follow instruction http://nginx.org/en/docs/howto_build_on_win32.html and it success but when I add --add-module=objs/lib/headers-more I got a lot off error

objs/lib/headers-more/src/ngx_http_headers_more_filter_module.c(260) : warning C4431: missing typespecifier - int assumed. Note: C no longer supports default-int
objs/lib/headers-more/src/ngx_http_headers_more_filter_module.c(260) : error C2054: expected '(' to follow 'r'
objs/lib/headers-more/src/ngx_http_headers_more_filter_module.c(332) : error C2143: syntax error :missing ')' before '*'
objs/lib/headers-more/src/ngx_http_headers_more_filter_module.c(332) : error C2143: syntax error :missing '{' before '*'
objs/lib/headers-more/src/ngx_http_headers_more_filter_module.c(332) : error C2059: syntax error :')'
objs/lib/headers-more/src/ngx_http_headers_more_filter_module.c(333) : warning C4431: missing typespecifier - int assumed. Note: C no longer supports default-int
objs/lib/headers-more/src/ngx_http_headers_more_filter_module.c(333) : error C2054: expected '(' to follow 'cf'
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\Bin\cl.EXE"' : return code '0x2'
Stop.

full error report http://pastebin.com/raw.php?i=PbdWa6aG

Please support windows build.

thanks

Header output truncating?

Hello,

I am using more_set_headers to replace the Server: header response from "nginx" to show our internal server hostnames for tracking. I don't need to expose the full hostname so I strip the domain and grab the datacenter.

Hostname I am testing with: kyle.mdr.domain.com
NGINX Config Section: http block

    map $hostname $new_hostname {
      ~^(?<server_hostname>.*)\.(?<datacenter2>.*)\.(.*)\.com$ $server_hostname;
    }
    more_set_headers 'Server: WD ($new_hostname/$datacenter2)';

Returns: Server: WD (kyle/mdr)

    map $hostname $new_hostname {
      ~^(?<server_hostname>.*)\.(?<datacenter2>.*)\.(.*)\.com$ $server_hostname;
    }

    more_set_headers 'Server: WD ($datacenter2/$new_hostname)';

Returns: Server: WD (mdr/ky

I cannot figure out why it would truncate based on which variable appears first...

FreeBSD kyle.mdr.domain.com 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 [email protected]:/usr/obj/usr/src/sys/GENERIC amd64

nginx version: nginx/1.7.10
TLS SNI support enabled
configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt='-I /usr/local/include' --with-ld-opt='-L /usr/local/lib' --conf-path=/usr/local/etc/nginx/nginx.conf --sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid --error-log-path=/var/log/nginx-error.log --user=www --group=www --with-file-aio --with-ipv6 --http-client-body-temp-path=/var/tmp/nginx/client_body_temp --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp --http-proxy-temp-path=/var/tmp/nginx/proxy_temp --http-scgi-temp-path=/var/tmp/nginx/scgi_temp --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi_temp --http-log-path=/var/log/nginx-access.log --add-module=/wrkdirs/usr/ports/www/nginx-devel/work/nginx-accesskey-2.0.3 --add-module=/wrkdirs/usr/ports/www/nginx-devel/work/ngx_http_auth_pam_module-1.2 --add-module=/wrkdirs/usr/ports/www/nginx-devel/work/openresty-headers-more-nginx-module-0c6e05d --with-http_gzip_static_module --with-http_gunzip_module --with-http_realip_module --with-http_secure_link_module --with-http_stub_status_module --add-module=/wrkdirs/usr/ports/www/nginx-devel/work/nginx_upload_module-2.2.0 --add-module=/wrkdirs/usr/ports/www/nginx-devel/work/mod_zip-1.1.6 --with-pcre --with-http_spdy_module --with-http_ssl_module

Headers not clearing

I'm not sure what is going on here since I had it working before, but headers aren't clearing properly:

    more_clear_headers   "Server:*";
    more_clear_headers   "X-Page-Speed:*";
    more_clear_headers   "X-Powered-By:*";
    more_clear_headers   "X-CF-Powered-By:*";

Is what I tried, but the the headers are still appearing. I tried restart nginx multiple times with different configurations:

    more_clear_headers   "Server: ";
    more_clear_headers   "X-Page-Speed: ";
    more_clear_headers   "X-Powered-By: ";
    more_clear_headers   "X-CF-Powered-By: ";

and
more_clear_headers "Server:";
more_clear_headers "X-Page-Speed:";
more_clear_headers "X-Powered-By:";
more_clear_headers "X-CF-Powered-By:";

Here is Nginx -V:
nginx version: nginx/1.6.0
built by gcc 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-http_auth_request_module --with-mail --with-mail_ssl_module --with-file-aio --add-module=/tmp/nginx-1.6.0/debian/modules/ngx_pagespeed --add-module=/tmp/nginx-1.6.0/debian/modules/headers-more-nginx-module --with-http_spdy_module --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro' --with-ipv6

I'm using Ubuntu 12.04 with Nginx 1.6.0. Thanks!

type will not match `text/html; charset=utf-8`

I am trying to use more_set_headers inside a server or location block that reverse proxies to an upstream server

server { 
  listen 80;
  listen 443 ssl;
  server_name somesite.com;

  # more_set_headers -t 'text/html' 'X-Test: foo';                  # doesn't work
  # more_set_headers -t 'text/html; charset=utf-8' 'X-Test: foo';   # doesn't work
  # more_set_headers -s '200' 'X-Test: foo';                        # works
  # more_set_headers 'X-Test: foo';                                 # works

  location / {
    proxy_pass http://upstream_server;
  }
}

The response coming from the upstream_server has Content-Type: text/html; charset=utf-8

I am use nginx 1.8.0 which I know isn't on the list of "supported" versions. Any thoughts?

Can't strip certain headers

Maybe this is not an issue, but I couldn't find a refference elsewhere so pardon me for wasting your bandwidth.

I have some GET requests comming from embedded devices, where I want to return as little information as I can. The device itself doesn't care about the HTTP protocol, it only needs to parse the response for the information it is interested in. Hence the need for as few headers as possible. I know a stand-alone tcp service might have been more suitable, but other design choices prohibit that.

The problem I have is that I can't strip Transfer-Encoding, Connection and Proxy-Connection headers. At least the first of these is used as an example in the module documentation so this is quite puzzling.

My configuration is pretty straigh-forward:

  more_clear_headers X-Powered-By Server;
  location /time {
    passenger_enabled on;
    more_clear_headers Content-Length Transfer-Encoding Content-Type Connection Status X-UA-Compatible ETag;
    more_clear_headers Cache-Control X-Request-Id X-Runtime X-Rack-Cache Proxy-Connection;
  }

The backend is a Rails 3.2.6 application.
Nginx is:

# /opt/nginx/sbin/nginx -V
nginx version: nginx/1.2.3
built by gcc 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC) 
TLS SNI support enabled
configure arguments: --prefix=/opt/nginx --with-http_ssl_module --with-http_gzip_static_module --with-cc-opt=-Wno-error --with-pcre=/tmp/root-passenger-8332/pcre-8.30 --add-module=/usr/local/rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.15/ext/nginx --add-module=/home/ec2-user/agentzh-headers-more-nginx-module-6586984

Thanks for your time,

-Kostas

Header disappears in HTTP-response after setting a certain value

system information:
rhel 5.5 x64
nginx 1.0.1
headers-more-nginx-module 0.15rc1

Hi,

I'm trying to use headers-more-module in my project and it fits my needs completely.
But I have a problem.
Here is the task:
My java application in response to http-request that starts download process sets 2 headers.
Content-Disposition: attachment; filename="name_of_the_file_in_russian_MSIE_mode"
X-Content-Disposition-Firefox: attachment; filename="name_of_the_file_in_russian_Firefox_mode"
Nginx has to replace value of Content-Disposition header if user agent is Firefox.
The configuration is:

location /dnld
{
if ( $http_user_agent ~* "Firefox" )
{
#set $filename 'attachment; filename="firefox.txt"';
more_set_headers 'Content-Disposition: $http_x_content_disposition_firefox';
}

proxy_pass              http://backend;
include                      /etc/nginx/conf/IP/proxy_redirect.conf;
include                      /etc/nginx/conf/pgzcachingpart.conf;
add_header             Cache-Control    public;
expires                      modified +365d;
proxy_cache_valid  200 301 304 365d;
proxy_cache             zone_pgz_docs_pf;

}

The problem is that in this configuration if user-agent is Firefox Content-Disposition header dissappears in nginx-response to client.
If I write something like this:
if ( $http_user_agent ~* "Firefox" )
{
set $filename 'attachment; filename="firefox.txt"';
more_set_headers 'Content-Disposition: $filename';
}
Content-Disposition exists and has value firefox.txt

Here are examples of values of X-Content-Disposition-Firefox that led to the problem:
X-Content-Disposition-Firefox attachment; filename="=?UTF-8?B?0JTQvtC60YPQvNC10L3RgiDQtNC70Y8g0LjQt9Cy0LXRidC10L3QuNC5LmRvYw==?="
X-Content-Disposition-Firefox attachment; filename="=?UTF-8?B?VGVzdCBET0NYLmRvY3g=?="

Any help will be appreciated,
Yakov.

more_set_headers with try_files not working

Running nginx 1.2.4 on FreeBSD 9.0. When I have more_set_headers inside an if statement, and a try_files that redirects to a final location, the final location never gets reached.

Control is passed to the /__cache__ block from php-fpm via an X-Accel-Redirect header. If $upstream_http_x_expires_header is set than the @fetch block is not executed. If the header is not set than it works fine.

location ^~ /**cache** {
    internal;
    set $subid $upstream_http_x_sid;
    if ($upstream_http_x_expires_header) {
        more_set_headers -s '200' "Expires: $upstream_http_x_expires_header";
    }
    rewrite ^/**cache**/(.*) /$1 break;
    log_not_found off;
    try_files $uri @fetch;
}

more_set_headers and manipulating single cookie

@agentzh

I'm trying to solve a problem and this module is very close to intended workaround.

Backend app sets number of cookies and I need to alter value of a cookie in certain circumstances.

When I do:

more_set_headers "Set-Cookie: target-cookie=myvalue";

It does changes target-cookie's value but it removes other "Set-cookie" header from output.

My intention is to change value for target-cookie only without touching other cookies.

May I know is there any workaround for this? Or this can rectified by patching module itself?

Thanks.

Server Header is not set if used with Ngx_pagespeed

Here my output for nginx -V:
nginx version: nginx/1.6.2
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC)
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-mail --with-mail_ssl_module --with-http_spdy_module --add-module=/tmp/tmp1ra9oc/rpmbuild//BUILD/nginx-1.6.2/headers-more-nginx-module-0.25 --add-module=/tmp/tmp1ra9oc/rpmbuild//BUILD/nginx-1.6.2/ngx_pagespeed-1.8.31.4-beta --with-file-aio --with-ipv6 --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generi
As seen - I am using both ngx_pagespeed and headers-more modules.
I am running in curious situation: if I have pagespeed turned on, then
'more_set_headers 'Server: Test';'
is set only on static resources (like css, js, images), while everything else is bearing header "Server: nginx".
It is being shown even on html pages, while i see my custom Server on static resources

compilation error with nginx 1.9.3 and 1.9.7 when compiling with headers_more and set_misc modules

compiling with the following configure arguments gives a compile error:

./configure \
        --sbin-path=/usr/local/sbin \
        --conf-path=/etc/nginx/nginx.conf \
        --pid-path=/var/run/nginx.pid \
        --error-log-path=/var/log/nginx/error.log \
        --http-log-path=/var/log/nginx/access.log \
        \
        --with-http_ssl_module \
        --add-module=/tmp/build/ngx_devel_kit \
        --add-module=/tmp/build/headers-more-nginx-module \
        --add-module=/tmp/build/set-misc-nginx-module \
        --add-module=/tmp/build/lua-nginx-module
checking for OS
 + Linux 4.2.5-1-ARCH x86_64
checking for C compiler ... found
 + using GNU C compiler
 + gcc version: 4.9.2 (Ubuntu 4.9.2-10ubuntu13)
checking for gcc -pipe switch ... found
checking for gcc builtin atomic operations ... found
checking for C99 variadic macros ... found
checking for gcc variadic macros ... found
checking for unistd.h ... found
checking for inttypes.h ... found
checking for limits.h ... found
checking for sys/filio.h ... not found
checking for sys/param.h ... found
checking for sys/mount.h ... found
checking for sys/statvfs.h ... found
checking for crypt.h ... found
checking for Linux specific features
checking for epoll ... found
checking for EPOLLRDHUP ... found
checking for O_PATH ... found
checking for sendfile() ... found
checking for sendfile64() ... found
checking for sys/prctl.h ... found
checking for prctl(PR_SET_DUMPABLE) ... found
checking for sched_setaffinity() ... found
checking for crypt_r() ... found
checking for sys/vfs.h ... found
checking for nobody group ... not found
checking for nogroup group ... found
checking for poll() ... found
checking for /dev/poll ... not found
checking for kqueue ... not found
checking for crypt() ... not found
checking for crypt() in libcrypt ... found
checking for F_READAHEAD ... not found
checking for posix_fadvise() ... found
checking for O_DIRECT ... found
checking for F_NOCACHE ... not found
checking for directio() ... not found
checking for statfs() ... found
checking for statvfs() ... found
checking for dlopen() ... not found
checking for dlopen() in libdl ... found
checking for sched_yield() ... found
checking for SO_SETFIB ... not found
checking for SO_REUSEPORT ... found
checking for SO_ACCEPTFILTER ... not found
checking for TCP_DEFER_ACCEPT ... found
checking for TCP_KEEPIDLE ... found
checking for TCP_FASTOPEN ... found
checking for TCP_INFO ... found
checking for accept4() ... found
checking for eventfd() ... found
checking for int size ... 4 bytes
checking for long size ... 8 bytes
checking for long long size ... 8 bytes
checking for void * size ... 8 bytes
checking for uint64_t ... found
checking for sig_atomic_t ... found
checking for sig_atomic_t size ... 4 bytes
checking for socklen_t ... found
checking for in_addr_t ... found
checking for in_port_t ... found
checking for rlim_t ... found
checking for uintptr_t ... uintptr_t found
checking for system byte ordering ... little endian
checking for size_t size ... 8 bytes
checking for off_t size ... 8 bytes
checking for time_t size ... 8 bytes
checking for setproctitle() ... not found
checking for pread() ... found
checking for pwrite() ... found
checking for sys_nerr ... found
checking for localtime_r() ... found
checking for posix_memalign() ... found
checking for memalign() ... found
checking for mmap(MAP_ANON|MAP_SHARED) ... found
checking for mmap("/dev/zero", MAP_SHARED) ... found
checking for System V shared memory ... found
checking for POSIX semaphores ... not found
checking for POSIX semaphores in libpthread ... found
checking for struct msghdr.msg_control ... found
checking for ioctl(FIONBIO) ... found
checking for struct tm.tm_gmtoff ... found
checking for struct dirent.d_namlen ... not found
checking for struct dirent.d_type ... found
checking for sysconf(_SC_NPROCESSORS_ONLN) ... found
checking for openat(), fstatat() ... found
checking for getaddrinfo() ... found
configuring additional modules
adding module in /tmp/build/ngx_devel_kit
 + ngx_devel_kit was configured
adding module in /tmp/build/headers-more-nginx-module
 + ngx_http_headers_more_filter_module was configured
adding module in /tmp/build/set-misc-nginx-module
 + ngx_http_headers_more_filter_module was configured
adding module in /tmp/build/lua-nginx-module
checking for Lua library ... not found
checking for Lua library in /usr/local/ ... not found
checking for Lua library in /usr/local/ ... not found
checking for Lua library in /usr/pkg/ ... not found
checking for Lua library in /opt/local/ ... not found
checking for Lua library in /usr/local/*/lua51/ ... not found
checking for Lua library in /usr/ ... not found
checking for LuaJIT library in /usr/local/ ... not found
checking for LuaJIT library in /usr/ ... found
checking for export symbols by default (-E) ... found
checking for export symbols by default (--export-all-symbols) ... not found
checking for SO_PASSCRED ... found
 + ngx_http_lua_module was configured
checking for PCRE library ... found
checking for PCRE JIT support ... found
checking for OpenSSL library ... found
checking for zlib library ... found
creating objs/Makefile

Configuration summary
  + using system PCRE library
  + using system OpenSSL library
  + md5: using OpenSSL library
  + sha1: using OpenSSL library
  + using system zlib library

  nginx path prefix: "/usr/local/nginx"
  nginx binary file: "/usr/local/sbin"
  nginx configuration prefix: "/etc/nginx"
  nginx configuration file: "/etc/nginx/nginx.conf"
  nginx pid file: "/var/run/nginx.pid"
  nginx error log file: "/var/log/nginx/error.log"
  nginx http access log file: "/var/log/nginx/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"

make -f objs/Makefile
make[1]: Entering directory '/tmp/build/nginx'
objs/Makefile:1303: warning: overriding recipe for target 'objs/addon/src/ngx_http_headers_more_filter_module.o'
objs/Makefile:1275: warning: ignoring old recipe for target 'objs/addon/src/ngx_http_headers_more_filter_module.o'
objs/Makefile:1310: warning: overriding recipe for target 'objs/addon/src/ngx_http_headers_more_headers_out.o'
objs/Makefile:1282: warning: ignoring old recipe for target 'objs/addon/src/ngx_http_headers_more_headers_out.o'
objs/Makefile:1317: warning: overriding recipe for target 'objs/addon/src/ngx_http_headers_more_headers_in.o'
objs/Makefile:1289: warning: ignoring old recipe for target 'objs/addon/src/ngx_http_headers_more_headers_in.o'
objs/Makefile:1324: warning: overriding recipe for target 'objs/addon/src/ngx_http_headers_more_util.o'
objs/Makefile:1296: warning: ignoring old recipe for target 'objs/addon/src/ngx_http_headers_more_util.o'
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/nginx.o \
        src/core/nginx.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_log.o \
        src/core/ngx_log.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_palloc.o \
        src/core/ngx_palloc.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_array.o \
        src/core/ngx_array.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_list.o \
        src/core/ngx_list.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_hash.o \
        src/core/ngx_hash.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_buf.o \
        src/core/ngx_buf.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_queue.o \
        src/core/ngx_queue.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_output_chain.o \
        src/core/ngx_output_chain.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_string.o \
        src/core/ngx_string.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_parse.o \
        src/core/ngx_parse.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_parse_time.o \
        src/core/ngx_parse_time.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_inet.o \
        src/core/ngx_inet.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_file.o \
        src/core/ngx_file.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_crc32.o \
        src/core/ngx_crc32.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_murmurhash.o \
        src/core/ngx_murmurhash.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_md5.o \
        src/core/ngx_md5.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_rbtree.o \
        src/core/ngx_rbtree.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_radix_tree.o \
        src/core/ngx_radix_tree.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_slab.o \
        src/core/ngx_slab.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_times.o \
        src/core/ngx_times.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_shmtx.o \
        src/core/ngx_shmtx.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_connection.o \
        src/core/ngx_connection.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_cycle.o \
        src/core/ngx_cycle.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_spinlock.o \
        src/core/ngx_spinlock.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_rwlock.o \
        src/core/ngx_rwlock.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_cpuinfo.o \
        src/core/ngx_cpuinfo.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_conf_file.o \
        src/core/ngx_conf_file.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_resolver.o \
        src/core/ngx_resolver.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_open_file_cache.o \
        src/core/ngx_open_file_cache.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_crypt.o \
        src/core/ngx_crypt.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_proxy_protocol.o \
        src/core/ngx_proxy_protocol.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_syslog.o \
        src/core/ngx_syslog.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event.o \
        src/event/ngx_event.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event_timer.o \
        src/event/ngx_event_timer.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event_posted.o \
        src/event/ngx_event_posted.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event_accept.o \
        src/event/ngx_event_accept.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event_connect.o \
        src/event/ngx_event_connect.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event_pipe.o \
        src/event/ngx_event_pipe.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_time.o \
        src/os/unix/ngx_time.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_errno.o \
        src/os/unix/ngx_errno.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_alloc.o \
        src/os/unix/ngx_alloc.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_files.o \
        src/os/unix/ngx_files.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_socket.o \
        src/os/unix/ngx_socket.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_recv.o \
        src/os/unix/ngx_recv.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_readv_chain.o \
        src/os/unix/ngx_readv_chain.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_udp_recv.o \
        src/os/unix/ngx_udp_recv.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_send.o \
        src/os/unix/ngx_send.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_writev_chain.o \
        src/os/unix/ngx_writev_chain.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_channel.o \
        src/os/unix/ngx_channel.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_shmem.o \
        src/os/unix/ngx_shmem.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_process.o \
        src/os/unix/ngx_process.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_daemon.o \
        src/os/unix/ngx_daemon.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_setaffinity.o \
        src/os/unix/ngx_setaffinity.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_setproctitle.o \
        src/os/unix/ngx_setproctitle.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_posix_init.o \
        src/os/unix/ngx_posix_init.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_user.o \
        src/os/unix/ngx_user.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_process_cycle.o \
        src/os/unix/ngx_process_cycle.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_linux_init.o \
        src/os/unix/ngx_linux_init.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/modules/ngx_epoll_module.o \
        src/event/modules/ngx_epoll_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/os/unix/ngx_linux_sendfile_chain.o \
        src/os/unix/ngx_linux_sendfile_chain.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event_openssl.o \
        src/event/ngx_event_openssl.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/event/ngx_event_openssl_stapling.o \
        src/event/ngx_event_openssl_stapling.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/src/core/ngx_regex.o \
        src/core/ngx_regex.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http.o \
        src/http/ngx_http.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_core_module.o \
        src/http/ngx_http_core_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_special_response.o \
        src/http/ngx_http_special_response.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_request.o \
        src/http/ngx_http_request.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_parse.o \
        src/http/ngx_http_parse.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_header_filter_module.o \
        src/http/ngx_http_header_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_write_filter_module.o \
        src/http/ngx_http_write_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_copy_filter_module.o \
        src/http/ngx_http_copy_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_log_module.o \
        src/http/modules/ngx_http_log_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_request_body.o \
        src/http/ngx_http_request_body.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_variables.o \
        src/http/ngx_http_variables.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_script.o \
        src/http/ngx_http_script.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_upstream.o \
        src/http/ngx_http_upstream.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_upstream_round_robin.o \
        src/http/ngx_http_upstream_round_robin.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_static_module.o \
        src/http/modules/ngx_http_static_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_index_module.o \
        src/http/modules/ngx_http_index_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_chunked_filter_module.o \
        src/http/modules/ngx_http_chunked_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_range_filter_module.o \
        src/http/modules/ngx_http_range_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_headers_filter_module.o \
        src/http/modules/ngx_http_headers_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_not_modified_filter_module.o \
        src/http/modules/ngx_http_not_modified_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_file_cache.o \
        src/http/ngx_http_file_cache.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_gzip_filter_module.o \
        src/http/modules/ngx_http_gzip_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/ngx_http_postpone_filter_module.o \
        src/http/ngx_http_postpone_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_ssi_filter_module.o \
        src/http/modules/ngx_http_ssi_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_charset_filter_module.o \
        src/http/modules/ngx_http_charset_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_userid_filter_module.o \
        src/http/modules/ngx_http_userid_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_autoindex_module.o \
        src/http/modules/ngx_http_autoindex_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_auth_basic_module.o \
        src/http/modules/ngx_http_auth_basic_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_access_module.o \
        src/http/modules/ngx_http_access_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_limit_conn_module.o \
        src/http/modules/ngx_http_limit_conn_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_limit_req_module.o \
        src/http/modules/ngx_http_limit_req_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_geo_module.o \
        src/http/modules/ngx_http_geo_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_map_module.o \
        src/http/modules/ngx_http_map_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_split_clients_module.o \
        src/http/modules/ngx_http_split_clients_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_referer_module.o \
        src/http/modules/ngx_http_referer_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_rewrite_module.o \
        src/http/modules/ngx_http_rewrite_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_ssl_module.o \
        src/http/modules/ngx_http_ssl_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_proxy_module.o \
        src/http/modules/ngx_http_proxy_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_fastcgi_module.o \
        src/http/modules/ngx_http_fastcgi_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_uwsgi_module.o \
        src/http/modules/ngx_http_uwsgi_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_scgi_module.o \
        src/http/modules/ngx_http_scgi_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_memcached_module.o \
        src/http/modules/ngx_http_memcached_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_empty_gif_module.o \
        src/http/modules/ngx_http_empty_gif_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_browser_module.o \
        src/http/modules/ngx_http_browser_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_upstream_hash_module.o \
        src/http/modules/ngx_http_upstream_hash_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \
        src/http/modules/ngx_http_upstream_ip_hash_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
        src/http/modules/ngx_http_upstream_least_conn_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
        src/http/modules/ngx_http_upstream_keepalive_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src \
        -o objs/src/http/modules/ngx_http_upstream_zone_module.o \
        src/http/modules/ngx_http_upstream_zone_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ndk.o \
        /tmp/build/ngx_devel_kit/src/ndk.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_headers_more_filter_module.o \
        /tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_filter_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_headers_more_headers_out.o \
        /tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_out.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_headers_more_headers_in.o \
        /tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_in.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_headers_more_util.o \
        /tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_script.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_script.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_log.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_log.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_subrequest.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_subrequest.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_ndk.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_ndk.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_control.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_control.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_time.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_time.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_misc.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_misc.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_variable.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_variable.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_string.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_string.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_output.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_output.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_headers.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_headers.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_req_body.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_req_body.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_uri.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_uri.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_args.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_args.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_ctx.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_ctx.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_regex.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_regex.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_module.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_module.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_headers_out.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_headers_out.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_headers_in.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_headers_in.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_directive.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_directive.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_consts.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_consts.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_exception.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_exception.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_util.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_util.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_cache.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_cache.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_contentby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_contentby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_rewriteby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_rewriteby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_accessby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_accessby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_setby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_setby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_capturefilter.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_capturefilter.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_clfactory.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_clfactory.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_pcrefix.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_pcrefix.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_headerfilterby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_headerfilterby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_shdict.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_shdict.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_socket_tcp.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_socket_tcp.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_api.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_api.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_logby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_logby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_sleep.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_sleep.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_coroutine.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_coroutine.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_bodyfilterby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_bodyfilterby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_initby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_initby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_initworkerby.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_initworkerby.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_socket_udp.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_socket_udp.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_req_method.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_req_method.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_phase.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_phase.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_uthread.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_uthread.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_timer.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_timer.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_config.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_config.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_worker.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_worker.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs -I src/http -I src/http/modules -I /tmp/build/ngx_devel_kit/src -I src/mail -I src/stream \
        -o objs/addon/src/ngx_http_lua_lex.o \
        /tmp/build/lua-nginx-module/src/ngx_http_lua_lex.c
cc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -DNDK_SET_VAR -I src/core -I src/event -I src/event/modules -I src/os/unix -I /tmp/build/ngx_devel_kit/objs -I objs/addon/ndk -I /usr/include/luajit-2.0 -I /tmp/build/lua-nginx-module/src/api -I objs \
        -o objs/ngx_modules.o \
        objs/ngx_modules.c
cc -o objs/nginx \
objs/src/core/nginx.o \
objs/src/core/ngx_log.o \
objs/src/core/ngx_palloc.o \
objs/src/core/ngx_array.o \
objs/src/core/ngx_list.o \
objs/src/core/ngx_hash.o \
objs/src/core/ngx_buf.o \
objs/src/core/ngx_queue.o \
objs/src/core/ngx_output_chain.o \
objs/src/core/ngx_string.o \
objs/src/core/ngx_parse.o \
objs/src/core/ngx_parse_time.o \
objs/src/core/ngx_inet.o \
objs/src/core/ngx_file.o \
objs/src/core/ngx_crc32.o \
objs/src/core/ngx_murmurhash.o \
objs/src/core/ngx_md5.o \
objs/src/core/ngx_rbtree.o \
objs/src/core/ngx_radix_tree.o \
objs/src/core/ngx_slab.o \
objs/src/core/ngx_times.o \
objs/src/core/ngx_shmtx.o \
objs/src/core/ngx_connection.o \
objs/src/core/ngx_cycle.o \
objs/src/core/ngx_spinlock.o \
objs/src/core/ngx_rwlock.o \
objs/src/core/ngx_cpuinfo.o \
objs/src/core/ngx_conf_file.o \
objs/src/core/ngx_resolver.o \
objs/src/core/ngx_open_file_cache.o \
objs/src/core/ngx_crypt.o \
objs/src/core/ngx_proxy_protocol.o \
objs/src/core/ngx_syslog.o \
objs/src/event/ngx_event.o \
objs/src/event/ngx_event_timer.o \
objs/src/event/ngx_event_posted.o \
objs/src/event/ngx_event_accept.o \
objs/src/event/ngx_event_connect.o \
objs/src/event/ngx_event_pipe.o \
objs/src/os/unix/ngx_time.o \
objs/src/os/unix/ngx_errno.o \
objs/src/os/unix/ngx_alloc.o \
objs/src/os/unix/ngx_files.o \
objs/src/os/unix/ngx_socket.o \
objs/src/os/unix/ngx_recv.o \
objs/src/os/unix/ngx_readv_chain.o \
objs/src/os/unix/ngx_udp_recv.o \
objs/src/os/unix/ngx_send.o \
objs/src/os/unix/ngx_writev_chain.o \
objs/src/os/unix/ngx_channel.o \
objs/src/os/unix/ngx_shmem.o \
objs/src/os/unix/ngx_process.o \
objs/src/os/unix/ngx_daemon.o \
objs/src/os/unix/ngx_setaffinity.o \
objs/src/os/unix/ngx_setproctitle.o \
objs/src/os/unix/ngx_posix_init.o \
objs/src/os/unix/ngx_user.o \
objs/src/os/unix/ngx_process_cycle.o \
objs/src/os/unix/ngx_linux_init.o \
objs/src/event/modules/ngx_epoll_module.o \
objs/src/os/unix/ngx_linux_sendfile_chain.o \
objs/src/event/ngx_event_openssl.o \
objs/src/event/ngx_event_openssl_stapling.o \
objs/src/core/ngx_regex.o \
objs/src/http/ngx_http.o \
objs/src/http/ngx_http_core_module.o \
objs/src/http/ngx_http_special_response.o \
objs/src/http/ngx_http_request.o \
objs/src/http/ngx_http_parse.o \
objs/src/http/ngx_http_header_filter_module.o \
objs/src/http/ngx_http_write_filter_module.o \
objs/src/http/ngx_http_copy_filter_module.o \
objs/src/http/modules/ngx_http_log_module.o \
objs/src/http/ngx_http_request_body.o \
objs/src/http/ngx_http_variables.o \
objs/src/http/ngx_http_script.o \
objs/src/http/ngx_http_upstream.o \
objs/src/http/ngx_http_upstream_round_robin.o \
objs/src/http/modules/ngx_http_static_module.o \
objs/src/http/modules/ngx_http_index_module.o \
objs/src/http/modules/ngx_http_chunked_filter_module.o \
objs/src/http/modules/ngx_http_range_filter_module.o \
objs/src/http/modules/ngx_http_headers_filter_module.o \
objs/src/http/modules/ngx_http_not_modified_filter_module.o \
objs/src/http/ngx_http_file_cache.o \
objs/src/http/modules/ngx_http_gzip_filter_module.o \
objs/src/http/ngx_http_postpone_filter_module.o \
objs/src/http/modules/ngx_http_ssi_filter_module.o \
objs/src/http/modules/ngx_http_charset_filter_module.o \
objs/src/http/modules/ngx_http_userid_filter_module.o \
objs/src/http/modules/ngx_http_autoindex_module.o \
objs/src/http/modules/ngx_http_auth_basic_module.o \
objs/src/http/modules/ngx_http_access_module.o \
objs/src/http/modules/ngx_http_limit_conn_module.o \
objs/src/http/modules/ngx_http_limit_req_module.o \
objs/src/http/modules/ngx_http_geo_module.o \
objs/src/http/modules/ngx_http_map_module.o \
objs/src/http/modules/ngx_http_split_clients_module.o \
objs/src/http/modules/ngx_http_referer_module.o \
objs/src/http/modules/ngx_http_rewrite_module.o \
objs/src/http/modules/ngx_http_ssl_module.o \
objs/src/http/modules/ngx_http_proxy_module.o \
objs/src/http/modules/ngx_http_fastcgi_module.o \
objs/src/http/modules/ngx_http_uwsgi_module.o \
objs/src/http/modules/ngx_http_scgi_module.o \
objs/src/http/modules/ngx_http_memcached_module.o \
objs/src/http/modules/ngx_http_empty_gif_module.o \
objs/src/http/modules/ngx_http_browser_module.o \
objs/src/http/modules/ngx_http_upstream_hash_module.o \
objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \
objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
objs/src/http/modules/ngx_http_upstream_zone_module.o \
objs/addon/src/ndk.o \
objs/addon/src/ngx_http_headers_more_filter_module.o \
objs/addon/src/ngx_http_headers_more_headers_out.o \
objs/addon/src/ngx_http_headers_more_headers_in.o \
objs/addon/src/ngx_http_headers_more_util.o \
objs/addon/src/ngx_http_headers_more_filter_module.o \
objs/addon/src/ngx_http_headers_more_headers_out.o \
objs/addon/src/ngx_http_headers_more_headers_in.o \
objs/addon/src/ngx_http_headers_more_util.o \
objs/addon/src/ngx_http_lua_script.o \
objs/addon/src/ngx_http_lua_log.o \
objs/addon/src/ngx_http_lua_subrequest.o \
objs/addon/src/ngx_http_lua_ndk.o \
objs/addon/src/ngx_http_lua_control.o \
objs/addon/src/ngx_http_lua_time.o \
objs/addon/src/ngx_http_lua_misc.o \
objs/addon/src/ngx_http_lua_variable.o \
objs/addon/src/ngx_http_lua_string.o \
objs/addon/src/ngx_http_lua_output.o \
objs/addon/src/ngx_http_lua_headers.o \
objs/addon/src/ngx_http_lua_req_body.o \
objs/addon/src/ngx_http_lua_uri.o \
objs/addon/src/ngx_http_lua_args.o \
objs/addon/src/ngx_http_lua_ctx.o \
objs/addon/src/ngx_http_lua_regex.o \
objs/addon/src/ngx_http_lua_module.o \
objs/addon/src/ngx_http_lua_headers_out.o \
objs/addon/src/ngx_http_lua_headers_in.o \
objs/addon/src/ngx_http_lua_directive.o \
objs/addon/src/ngx_http_lua_consts.o \
objs/addon/src/ngx_http_lua_exception.o \
objs/addon/src/ngx_http_lua_util.o \
objs/addon/src/ngx_http_lua_cache.o \
objs/addon/src/ngx_http_lua_contentby.o \
objs/addon/src/ngx_http_lua_rewriteby.o \
objs/addon/src/ngx_http_lua_accessby.o \
objs/addon/src/ngx_http_lua_setby.o \
objs/addon/src/ngx_http_lua_capturefilter.o \
objs/addon/src/ngx_http_lua_clfactory.o \
objs/addon/src/ngx_http_lua_pcrefix.o \
objs/addon/src/ngx_http_lua_headerfilterby.o \
objs/addon/src/ngx_http_lua_shdict.o \
objs/addon/src/ngx_http_lua_socket_tcp.o \
objs/addon/src/ngx_http_lua_api.o \
objs/addon/src/ngx_http_lua_logby.o \
objs/addon/src/ngx_http_lua_sleep.o \
objs/addon/src/ngx_http_lua_coroutine.o \
objs/addon/src/ngx_http_lua_bodyfilterby.o \
objs/addon/src/ngx_http_lua_initby.o \
objs/addon/src/ngx_http_lua_initworkerby.o \
objs/addon/src/ngx_http_lua_socket_udp.o \
objs/addon/src/ngx_http_lua_req_method.o \
objs/addon/src/ngx_http_lua_phase.o \
objs/addon/src/ngx_http_lua_uthread.o \
objs/addon/src/ngx_http_lua_timer.o \
objs/addon/src/ngx_http_lua_config.o \
objs/addon/src/ngx_http_lua_worker.o \
objs/addon/src/ngx_http_lua_lex.o \
objs/ngx_modules.o \
-Wl,-E -lpthread -lcrypt -L/usr/lib -lm -lluajit-5.1 -ldl -lpcre -lssl -lcrypto -ldl -lz
objs/addon/src/ngx_http_headers_more_filter_module.o:(.bss+0x0): multiple definition of `ngx_http_headers_more_location_hash'
objs/addon/src/ngx_http_headers_more_filter_module.o:(.bss+0x0): first defined here
objs/addon/src/ngx_http_headers_more_filter_module.o: In function `ngx_http_headers_more_merge_loc_conf':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_filter_module.c:185: multiple definition of `ngx_http_headers_more_filter_module'
objs/addon/src/ngx_http_headers_more_filter_module.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_filter_module.c:185: first defined here
objs/addon/src/ngx_http_headers_more_headers_out.o: In function `ngx_http_headers_more_exec_cmd':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_out.c:112: multiple definition of `ngx_http_headers_more_exec_cmd'
objs/addon/src/ngx_http_headers_more_headers_out.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_out.c:112: first defined here
objs/addon/src/ngx_http_headers_more_headers_out.o: In function `ngx_http_headers_more_set_headers':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_out.c:500: multiple definition of `ngx_http_headers_more_set_headers'
objs/addon/src/ngx_http_headers_more_headers_out.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_out.c:500: first defined here
objs/addon/src/ngx_http_headers_more_headers_out.o: In function `ngx_http_headers_more_clear_headers':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_out.c:509: multiple definition of `ngx_http_headers_more_clear_headers'
objs/addon/src/ngx_http_headers_more_headers_out.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_out.c:509: first defined here
objs/addon/src/ngx_http_headers_more_headers_in.o: In function `ngx_http_headers_more_exec_input_cmd':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_in.c:165: multiple definition of `ngx_http_headers_more_exec_input_cmd'
objs/addon/src/ngx_http_headers_more_headers_in.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_in.c:165: first defined here
objs/addon/src/ngx_http_headers_more_headers_in.o: In function `ngx_http_headers_more_set_input_headers':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_in.c:433: multiple definition of `ngx_http_headers_more_set_input_headers'
objs/addon/src/ngx_http_headers_more_headers_in.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_in.c:433: first defined here
objs/addon/src/ngx_http_headers_more_headers_in.o: In function `ngx_http_headers_more_clear_input_headers':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_in.c:442: multiple definition of `ngx_http_headers_more_clear_input_headers'
objs/addon/src/ngx_http_headers_more_headers_in.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_headers_in.c:442: first defined here
objs/addon/src/ngx_http_headers_more_util.o: In function `ngx_http_headers_more_parse_header':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:22: multiple definition of `ngx_http_headers_more_parse_header'
objs/addon/src/ngx_http_headers_more_util.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:22: first defined here
objs/addon/src/ngx_http_headers_more_util.o: In function `ngx_http_headers_more_parse_statuses':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:164: multiple definition of `ngx_http_headers_more_parse_statuses'
objs/addon/src/ngx_http_headers_more_util.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:164: first defined here
objs/addon/src/ngx_http_headers_more_util.o: In function `ngx_http_headers_more_parse_types':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:229: multiple definition of `ngx_http_headers_more_parse_types'
objs/addon/src/ngx_http_headers_more_util.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:229: first defined here
objs/addon/src/ngx_http_headers_more_util.o: In function `ngx_http_headers_more_rm_header_helper':
/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:268: multiple definition of `ngx_http_headers_more_rm_header_helper'
objs/addon/src/ngx_http_headers_more_util.o:/tmp/build/set-misc-nginx-module/src/ngx_http_headers_more_util.c:268: first defined here
collect2: error: ld returned 1 exit status
make[1]: *** [objs/nginx] Error 1
objs/Makefile:291: recipe for target 'objs/nginx' failed
make[1]: Leaving directory '/tmp/build/nginx'
make: *** [build] Error 2
Makefile:8: recipe for target 'build' failed

怎么支持任意位置插入呢?

抱歉,英文很烂,直接写中文了哈。
我在http中加入
more_set_headers "X-Powered-By: ASP.NET" "Server: Microsoft-IIS/7.0";

得到的效果如下:

[root@vm sbin]# curl -I vm
HTTP/1.1 200 OK
Date: Tue, 02 Apr 2013 08:13:33 GMT
Content-Type: text/html
Connection: keep-alive
Vary: Accept-Encoding
X-Powered-By: ASP.NET
Server: Microsoft-IIS/7.0

但是,如果看正常的IIS服务器大概是这样子的:
[root@vm sbin]# curl -I www.asp.net
HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 12921
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
X-Powered-By: ARR/2.5
X-Powered-By: ASP.NET
Date: Tue, 02 Apr 2013 08:13:47 GMT

也就是我们加的Server的位置是否可以自定义?

Wildcard support for more_clear_input_headers

It seems as though wildcards aren't supported for clearing request headers in more_clear_input_headers like they are for clearing response headers in more_clear_headers.

Could this be added as a feature? Due to the way an authentication module (Shibboleth; works using headers) I need to use operates, only a wildcard (or regex) would help stop arbitrary headers with a certain prefix.

couple of cppcheck issues

[src/ngx_http_headers_more_headers_in.c:275]: (error) Address of local auto-variable assigned to a function parameter.
[src/ngx_http_headers_more_headers_out.c:240]: (error) Address of local auto-variable assigned to a function parameter.

Dropped requests when more than 20 client headers

When more than 20 client headers are included in a response, the ngx_list_t for the headers will contain multiple parts. The function ngx_http_headers_more_rm_header in ngx_http_headers_more_util.c doesn't properly traverse the different parts of the list, which results in an error. The request is then dropped.

This situation can be reproduced by sending a request through nginx that contains more than 20 client headers, where the Host header is the last header.

The call stack to get to the relevant code looks like this:

(gdb) bt
#0  ngx_http_headers_more_rm_header (l=0x8f87124, h=0x8ff2748) at /opt/agentzh-headers-more-nginx-module-2cbbc15/src/ngx_http_headers_more_util.c:257
#1  0x080b2b99 in ngx_http_set_builtin_header (r=0x8f870f0, hv=0x8ff8358, value=0xbfd9a9f8) at /opt/agentzh-headers-more-nginx-module-2cbbc15/src/ngx_http_headers_more_headers_in.c:297
#2  0x080b2c96 in ngx_http_set_host_header (r=0x8f870f0, hv=0x8ff8358, value=0xbfd9a9f8) at /opt/agentzh-headers-more-nginx-module-2cbbc15/src/ngx_http_headers_more_headers_in.c:322
#3  0x080b2df7 in ngx_http_headers_more_exec_input_cmd (r=0x8f870f0, cmd=0x9115a50) at /opt/agentzh-headers-more-nginx-module-2cbbc15/src/ngx_http_headers_more_headers_in.c:151
#4  0x080b1de1 in ngx_http_headers_more_handler (r=0x8f870f0) at /opt/agentzh-headers-more-nginx-module-2cbbc15/src/ngx_http_headers_more_filter_module.c:285
#5  0x08074fe1 in ngx_http_core_rewrite_phase (r=0x8f870f0, ph=0x9117864) at src/http/ngx_http_core_module.c:915
#6  0x08071833 in ngx_http_core_run_phases (r=0x8f870f0) at src/http/ngx_http_core_module.c:861
#7  0x08076d13 in ngx_http_named_location (r=0x8f870f0, name=0xbfd9ab8c) at src/http/ngx_http_core_module.c:2555
#8  0x08077119 in ngx_http_core_try_files_phase (r=0x8f870f0, ph=0x91178b8) at src/http/ngx_http_core_module.c:1278
#9  0x08071833 in ngx_http_core_run_phases (r=0x8f870f0) at src/http/ngx_http_core_module.c:861
#10 0x08071932 in ngx_http_handler (r=0x8f870f0) at src/http/ngx_http_core_module.c:844
#11 0x0807be2f in ngx_http_process_request (r=0x8f870f0) at src/http/ngx_http_request.c:1667
#12 0x0807c4b9 in ngx_http_process_request_headers (rev=0xb718f0a4) at src/http/ngx_http_request.c:1113
#13 0x0807ca55 in ngx_http_process_request_line (rev=0xb718f0a4) at src/http/ngx_http_request.c:913
#14 0x08078e8b in ngx_http_init_request (rev=0xb718f0a4) at src/http/ngx_http_request.c:518
#15 0x0806aa71 in ngx_epoll_process_events (cycle=0x8f7e828, timer=60000, flags=1) at src/event/modules/ngx_epoll_module.c:678
#16 0x08061c06 in ngx_process_events_and_timers (cycle=0x8f7e828) at src/event/ngx_event.c:245
#17 0x08069074 in ngx_worker_process_cycle (cycle=0x8f7e828, data=0x0) at src/os/unix/ngx_process_cycle.c:801
#18 0x08067731 in ngx_spawn_process (cycle=0x8f7e828, proc=0x8068f98 , data=0x0, name=0x80b77af "worker process", respawn=-3) at src/os/unix/ngx_process.c:196
#19 0x0806856f in ngx_start_worker_processes (cycle=0x8f7e828, n=1, type=-3) at src/os/unix/ngx_process_cycle.c:360
#20 0x08069990 in ngx_master_process_cycle (cycle=0x8f7e828) at src/os/unix/ngx_process_cycle.c:136
#21 0x0804cd8b in main (argc=1, argv=0xbfd9b154) at src/core/nginx.c:411

The problem is when the "part" variable is re-assigned, the "data" variable is not also re-assigned.

A patch for the fix looks like this:

--- ngx_http_headers_more_util.c.orig   2011-12-29 11:42:59.089757781 -0500
+++ ngx_http_headers_more_util.c    2011-12-29 11:43:47.885757202 -0500
@@ -250,6 +250,7 @@
             }
 
             part = part->next;
+            data = part->elts;
             h = part->elts;
             i = 0;
         }

I was using version 0.14 of the code (https://github.com/agentzh/headers-more-nginx-module/tarball/v0.14), but it looks like the same problem is still in the latest version.

修改了last_modified无效

我试着修改了last_modified参数,但是他却没有生效,如下所示
more_set_headers "Last-Modified:Mon, 02 Mar 2015 14:38:11 GMT";
more_set_headers "Etag:54f475d1-7";

如下是测试结果:(他尽然返回的还是HTTP/1.1 200 OK)
MKdeMacBook-Air:Downloads tototalk$ curl -H "If-Modified-Since:Mon, 02 Mar 2015 14:38:11 GMT" -I http://test.mk.com
HTTP/1.1 200 OK
Server: nginx/1.6.2
Date: Mon, 02 Mar 2015 15:49:19 GMT
Content-Type: text/html
Content-Length: 6
Connection: keep-alive
ETag: 54f475d1-7
Last-Modified: Mon, 02 Mar 2015 14:38:11 GMT
Cache-Control: max-age=120
Accept-Ranges: bytes

下面是我返回正确的last_modified结果:
MKdeMacBook-Air:Downloads tototalk$ curl -H "If-Modified-Since:Mon, 02 Mar 2015 14:38:09 GMT" -I http://test.mk.com
HTTP/1.1 304 Not Modified
Server: nginx/1.6.2
Date: Mon, 02 Mar 2015 15:50:52 GMT
Connection: keep-alive
ETag: 54f475d1-7
Last-Modified: Mon, 02 Mar 2015 14:38:11 GMT
Cache-Control: max-age=120

请问这个问题如何处理啊。

A proxied response with charset will not work with 'more_set_headers' with '-t' parameter

Hello @agentzh :

Consider the following example (using headers-more version 0.25) :

# Main host
server {
    listen      0.0.0.0:8080;
    server_name www.example.com;

    location = /example.html {
        # none of them will work with response "Content-Type: text/html; charset=utf-8"
        more_set_headers -t 'text/html' 'X-Test: OK';
        more_set_headers -t 'text/html; charset=utf-8' 'X-Test: OK';
        more_set_headers -t 'text/*' 'X-Test: OK';
        # Backend host below
        proxy_pass http://localhost:8081;
    }
}

# Backend host
server {
    listen      0.0.0.0:8081;
    server_name internal.example.com default_server;

    charset utf-8;
    location = /example.html {
        return 200 "example HTML\r\n";
    }
}

When there's a charset coming from the backend server, the mod_set_headers cannot detect it and will not insert my special header (X-Test).

$ curl http://127.0.0.1:8080/example.html -H "Host: www.example.com" -v

  • About to connect() to 127.0.0.1 port 8080 (#0)

  • Trying 127.0.0.1... connected

  • Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
    GET /example.html HTTP/1.1
    User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.15.3 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    Accept: /
    Host: www.example.com

    HTTP/1.1 200 OK
    Server: nginx/1.6.1
    Date: Mon, 13 Oct 2014 21:30:48 GMT
    Content-Type: text/html; charset=utf-8
    Content-Length: 14
    Connection: keep-alive

example HTML

  • Connection #0 to host 127.0.0.1 left intact
  • Closing connection #0

When backend replies with no charset, the more_set_headers directive will work. The test below shows the request works well when I set 'charset off' in my example config.

$ curl http://127.0.0.1:8080/example.html -H "Host: www.example.com" -v
- About to connect() to 127.0.0.1 port 8080 (#0)
-   Trying 127.0.0.1... connected
- Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
  GET /example.html HTTP/1.1
  User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.15.3 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
  Accept: _/_
  Host: www.example.com
  
  HTTP/1.1 200 OK
  Server: nginx/1.6.1
  Date: Mon, 13 Oct 2014 21:28:46 GMT
  Content-Type: text/html
  Content-Length: 14
  Connection: keep-alive
  X-Test: OK

example HTML
- Connection #0 to host 127.0.0.1 left intact
- Closing connection #0

Here's the test system config below:
$ cat /etc/redhat-release 
CentOS release 6.4 (Final)
$ uname -a
Linux localhost.localdomain 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
$ sbin/nginx -V
nginx version: nginx/1.6.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) 
TLS SNI support enabled
configure arguments: --with-debug --prefix=/opt/nginx-1.6.1 --with-ipv6 --with-http_realip_module --without-mail_smtp_module --without-mail_pop3_module --without-mail_imap_module --with-http_stub_status_module --with-http_flv_module --with-http_ssl_module --with-http_sub_module --with-http_xslt_module --add-module=ngx_cache_purge-2.1 --add-module=nginx-ey-balancer-0.0.8 --add-module=gnosek-nginx-upstream-fair-a18b409 --add-module=nginx_syslog_patch-3ca5ba65541637f74467038aa032e2586321d0cb --add-module=ngx_devel_kit-0.2.19 --add-module=echo-nginx-module-0.55 --add-module=set-misc-nginx-module-0.25 --add-module=headers-more-nginx-module-0.25 --add-module=nginx-statsd-master

Thanks in advance,
Willian

A question of multiple http block

I am reading your beautiful code right now, good job on that.

But I came across several questions according to commit 5a70b6b:

  • This is the first time I notice that http {} can be used multiple times in a single nginx.conf. Wow! It is workable but not the best practice, right? Cuz, as far as I can tell, the second http {} overwrites the first one's pointer reference in slot of cycle->conf_ctx. It hurts nothing, but we cannot refer the first one with ngx_get_conf anymore.
  • I am not quite follow the intention of this commit. I understand the second http {} will construct the filter-chain repeatly. Do you want to keep the headers-more-filter in the last chain if it is already enabled in the first one? If I am guessing right, I find this filter is always enabled by the second http {}, even if both blocks have no more_xxx directives.

Enlighten me please! Thanks a lot.

breaks mime types

when I built nginx with the headers-more module (latest download from github) the content-type sent out for my files was always the default. When I rebuild and remove the module, everything works fine. mime types are loaded via

include /etc/nginx/mime.types;

nginx 1.8.1 使用more_clear_headers 过滤信息无效

你好!我是一名新手,对nginx也是刚了解,昨天按照一篇教程 在我本地上测试, 发现headers_more_nginx_module好像不生效, 下面是我的nginx 信息

nginx version: nginx/1.8.1
built by gcc 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
built with OpenSSL 1.0.2f 28 Jan 2016
TLS SNI support enabled
configure arguments: --prefix=/usr/local/webserver/nginx --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.38 --with-zlib=/usr/local/src/zlib-1.2.8 --with-openssl=/usr/local/src/openssl-1.0.2f --add-module=/usr/local/src/headers-more-nginx-module-0.30rc1

Set headers on 401 fails.

I seem to be unable to set a header on 401 responses, e.g.

server {
...
# enable HSTS, timeout 365 days
more_set_headers 'Strict-Transport-Security: max-age=31536000';
# deny in-frame delivery
more_set_headers 'X-Frame-Options: DENY';
...
}

Is this the same issue like #26 ("early" / "late") status or is it something else?
Headers are set on any location correctly, but not on 401 / Basic Auth, effectively breaking HSTS.

Nginx 1.5.7 compability (Server header)

Anyone running the plugin with 1.5.7 without having problems?

A recent upgrade (not sure if it was 1.5.7 or already earlier) seems to have introduced some problems:

  • the 'Server' header can't be changed anymore (clear/set)
  • other headers can't be removed (but I've seen an issue open for it stating that this isn't a bug but easily not possible since they might be added after the plugin)

So basically it's all about the Server header. Thanks!

more_set_headers Cache-Control extra semicolon

Simple test case:

=== TEST 9: dangling semicolon
--- http_config
    log_format  test
       '"$request" CC:"$sent_http_cache_control"  CT:"$sent_http_content_type"'
       ;
--- config
    access_log logs/test_log test;

    location /read {
        add_header Cache-Control 'no-store';
        add_header Cache-Control 'no-cache';
        more_clear_headers 'Cache-Control';
        echo Hi;
    }
--- request
GET /read
--- response_headers
!Cache-Control:
--- response_body
Hi

Output:

#   Failed test 'TEST 9: dangling semicolon - header Cache-Control ok'
#   at /usr/local/share/perl5/Test/Nginx/Socket.pm line 605.
#          got: ', no-store, no-cache'
#     expected: 'no-store'

#   Failed test 'TEST 9: dangling semicolon - header Cache-Control ok'
#   at /usr/local/share/perl5/Test/Nginx/Socket.pm line 605.
#          got: ', no-store, no-cache'
#     expected: 'no-store'

At log:

"GET /read HTTP/1.1" CC:"; no-store; no-cache"  CT:"text/plain"

Visible also from lua-module:

openresty/lua-nginx-module#65

It is not enough to set hash=0 and value.en=0.

more_clear_input_header and more_set_input_header on subrequest will result in assert

In 1caf5cc

an assert was added to catch headers_in linked list corruption.

However, look at http://hg.nginx.org/nginx/file/4a71ef1aa36d/src/http/ngx_http_core_module.c#l2476

this means the assert will always trigger when operating on subrequests.

It seems to me use of more_XX_input_headers on a subrequest is fundamentally unsafe unless we copy all the input headers to a new array when the more_XXX_input_headers is invoked.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.