+NAME
+ Catalyst::TraitFor::Request::ProxyBase - Replace request base with value
+ passed by HTTP proxy
+
+SYNOPSIS
+ package MyApp;
+ use Moose;
+ use namespace::autoclean;
+
+ use Catalyst;
+ use CatalystX::RoleApplicator;
+
+ extends 'Catalyst';
+
+ __PACKAGE__->apply_request_class_roles(qw/
+ Catalyst::TraitFor::Request::ProxyBase
+ /);
+
+ __PACKAGE__->setup;
+
+DESCRIPTION
+ This module is a Moose::Role which allows you more flexibility in your
+ application's deployment configurations when deployed behind a proxy.
+
+ The problem is that there is no standard way for a proxy to tell a
+ backend server what the original URI for the request was, or if the
+ request was initially SSL. (Yes, I do know about "X-Forwarded-Host", but
+ they don't do enough)
+
+ This creates an issue for someone wanting to deploy the same cluster of
+ application servers behind various URI endpoints.
+
+ Using this module, the request base ("$c->req->base") is replaced with
+ the contents of the "X-Request-Base" header, which is expected to be a
+ full URI, for example:
+
+ http://example.com
+ https://example.com
+ http://other.example.com:81/foo/bar/yourapp
+
+ This value will then be used as the base for uris constructed by
+ "$c->uri_for".
+
+REQUIRED METHODS
+ base
+ secure
+
+WRAPPED METHODS
+ base
+ secure
+
+BUGS
+ Probably. Patches welcome, please fork from:
+
+ http://github.com/bobtfish/catalyst-traitfor-request-proxybase
+
+ and send a pull request.
+
+AUTHOR
+ Tomas Doran (t0m) "<bobtfish@bobtfish.net>"
+
+COPYRIGHT
+ This module is Copyright (c) 2009 Tomas Doran and is licensed under the
+ same terms as perl itself.
+