Mercurial > hg > nginx-tests
view proxy_protocol_ipv6.t @ 833:62315953d703
Tests: HTTP/2 test with empty request body.
author | Sergey Kandaurov <pluknet@nginx.com> |
---|---|
date | Thu, 28 Jan 2016 12:49:44 +0300 |
parents | 9f5f604a840e |
children | e9064d691790 |
line wrap: on
line source
#!/usr/bin/perl # (C) Sergey Kandaurov # (C) Nginx, Inc. # Tests for haproxy protocol on IPv6 listening socket. ############################################################################### use warnings; use strict; use Test::More; BEGIN { use FindBin; chdir($FindBin::Bin); } use lib 'lib'; use Test::Nginx; ############################################################################### select STDERR; $| = 1; select STDOUT; $| = 1; my $t = Test::Nginx->new()->has(qw/http ipv6 realip stream/); $t->write_file_expand('nginx.conf', <<'EOF'); %%TEST_GLOBALS%% daemon off; events { } http { %%TEST_GLOBALS_HTTP%% server { listen [::1]:8080 proxy_protocol; server_name localhost; add_header X-IP $remote_addr; add_header X-PP $proxy_protocol_addr; real_ip_header proxy_protocol; location / { } location /pp { set_real_ip_from ::1/128; error_page 404 =200 /t; } } } stream { server { listen 127.0.0.1:8080; proxy_pass [::1]:8080; proxy_protocol on; } } EOF $t->write_file('t', 'SEE-THIS'); $t->try_run('no inet6 support')->plan(3); ############################################################################### TODO: { local $TODO = 'not yet' unless $t->has_version('1.9.10'); my $r = http_get('/t'); like($r, qr/X-IP: ::1/, 'realip'); like($r, qr/X-PP: 127.0.0.1/, 'proxy protocol'); $r = http_get('/pp'); like($r, qr/X-IP: 127.0.0.1/, 'proxy protocol realip'); } ###############################################################################