NAME

Plack::Middleware::XForwardedFor - Plack middleware to handle X-Forwarded-For headers

VERSION

version 0.172050

SYNOPSIS

builder {
  enable "Plack::Middleware::XForwardedFor",
    trust => [qw(127.0.0.1/8)];
};

DESCRIPTION

Plack::Middleware::XForwardedFor will look for X-Forwarded-For header in the incoming request and change REMOTE_ADDR to the real client IP

PARAMETERS

trust

If not specified then all addressed are trusted and REMOTE_ADDR will be set to the first IP in the X-Forwarded-For header.

If given, it should be a list of IPs or Netmasks that can be trusted. Starting with the IP of the client in REMOTE_ADDR then the IPs in the X-Forwarded-For header from right to left. The first untrusted IP found is set to be REMOTE_ADDR

SEE ALSO

Plack::Middleware, Net::IP

AUTHOR

Graham Barr <gbarr@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by Graham Barr.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.