[Catalyst] RFC for handling reverse proxies not deployed to standard ports.

Brian Kirkbride brian.kirkbride at deeperbydesign.com
Fri Jun 15 17:48:21 GMT 2007


Marlon Bailey wrote:
> Current situation:  There is no clean solution for deploying a reverse
> proxy to a nonstandard HTTP(80)/HTTPs(443) port, like port 8080.
> 
> Suggestion:  I'd like to submit a solution that extends the current
> proxy-backend practice of reading the proxy values out of the request
> header.  Currently the client's IP is taken from a "X-Forwarded-For"
> header value, and the host's(Reverse Proxy) hostname is taken from a
> "X-Forwarded-Host" header value. I suggest adding the ability for
> Catalyst to set the host's port from a "X-Forwarded-Host-Port" header
> value.  This way a simple config option such as this 
> 
> HEADER balancer_for_dev2 insert X-Forwarded-Host-Port: 8080
> 
> in a Perlbal config will give a clean solution.
> 
> Extras considerations:  After speaking with Matt(mst) about this, he
> also suggested allowing the "Path" value to be set from a header value
> as well.
> 
> What do you guys think?

I think that this would be great and give a lot more flexibility when 
deploying a proxied or load-balanced setup.  Especially the "Path" 
part, which would allow for the sort of sites within an app situation 
that I had asked about earlier.

The question is, would the X-Forwarded-Path header be the exact path 
Catalyst uses or would there be a X-Forwarded-Base header or somesuch?

Best,
Brian Kirkbride



More information about the Catalyst mailing list