summaryrefslogtreecommitdiff
path: root/pod/nginx/ngx_http_mirror_module.pod
blob: de6c587feb3a6bfa254768957ded3d04033cce08 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
=encoding utf-8

=head1 NAME

ngx_http_mirror_module - Module ngx_http_mirror_module




=head1



The C<ngx_http_mirror_module> module (1.13.4) implements
mirroring of an original request
by creating background mirror subrequests.
Responses to mirror subrequests are ignored.




=head1 Example Configuration




    
    location / {
        mirror /mirror;
        proxy_pass http://backend;
    }
    
    location = /mirror {
        internal;
        proxy_pass http://test_backend$request_uri;
    }






=head1 Directives

=head2 mirror


B<syntax:> mirror I<I<C<uri>> E<verbar> C<off>>


B<default:> I<off>


B<context:> I<http>


B<context:> I<server>


B<context:> I<location>





Sets the URI to which an original request will be mirrored.
Several mirrors can be specified on the same configuration level.







=head2 mirror_request_body


B<syntax:> mirror_request_body I<C<on> E<verbar> C<off>>


B<default:> I<on>


B<context:> I<http>


B<context:> I<server>


B<context:> I<location>





Indicates whether the client request body is mirrored.
When enabled, the client request body will be read
prior to creating mirror subrequests.
In this case, unbuffered client request body proxying
set by the
L<ngx_http_proxy_module>,
L<ngx_http_fastcgi_module>,
L<ngx_http_scgi_module>,
and
L<ngx_http_uwsgi_module>
directives will be disabled.

    
    location / {
        mirror /mirror;
        mirror_request_body off;
        proxy_pass http://backend;
    }
    
    location = /mirror {
        internal;
        proxy_pass http://log_backend;
        proxy_pass_request_body off;
        proxy_set_header Content-Length "";
        proxy_set_header X-Original-URI $request_uri;
    }