.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Perlbal::Plugin::XFFExtras 3pm" .TH Perlbal::Plugin::XFFExtras 3pm "2022-06-28" "perl v5.34.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Perlbal::Plugin::XFFExtras \- Perlbal plugin that can optionally add an X\-Forwarded\-Port and/or X\-Forwarded\-Proto header to reverse proxied requests. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& # in perlbal.conf \& \& LOAD XFFExtra \& \& CREATE POOL web \& POOL web ADD 10.0.0.1:80 \& \& CREATE SERVICE proxy \& SET role = reverse_proxy \& SET listen = 0.0.0.0:80 \& SET pool = web \& \& SET plugins = XFFExtras \& \& SET send_backend_port = yes \& SET send_backend_proto = yes \& ENABLE proxy .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This plugin adds optional headers to be sent to backend servers in reverse proxy mode. .SH "HEADERS" .IX Header "HEADERS" .IP "\(bu" 4 \&\fBX\-Forwarded-Port\fR .Sp This header will contain an integer value indicating the port that the peer connected to. This will correspond to the port number specified on the listen line of the perlbal service that initially handled the connection. .IP "\(bu" 4 \&\fBX\-Forwarded-Proto\fR .Sp This header will contain a string indicating the protocol the client connected to perlbal via. Currently this will be either 'http' or 'https'. .SH "AUTHOR" .IX Header "AUTHOR" Jonathan Steinert, .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright (C) 2012 by Say Media Inc, .PP This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.