https://bz.apache.org/bugzilla/show_bug.cgi?id=57830

--- Comment #11 from kycro...@gmail.com ---
Created attachment 33738
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=33738&action=edit
SVN patch, source code, and jar file

+1

Also....

I've attached a zip file containing:
tomcat-coyote-pp-src.zip (a maven project extending tomcat-coyote.jar)
tomcat-coyote-pp.patch   (an SVN patch for tomcat-coyote's source)
tomcat-coyote-pp.jar     (the jar built from tomcat-coyote-pp-src)

This extension is based on tomcat-coyote.jar version 8.0.32, but applying the
changes to 8.0.33 works as well.  It enables support for human readable Proxy
Protocol (according to the spec at
http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt) in the
Http11NioProtocol connector.

Simply add 'proxyProtocol="off|on|optional"' to server.xml, eg:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
proxyProtocol="optional" />

This will cause the connector to add two attributes to an incoming request:
"ProxyProtocolInfo" -> org.apache.tomcat.util.net.ProxyProtocolInfo   a class
that contains the source and destination addresses and ports extracted from the
proxy protocol header
"ProxyProtocolSourceAddress" -> String containing the source IP address



I've tested this using our own deployment+webapps+integration tests, and it
appears to work.  I'd love to see this (or any other support) added to tomcat. 
If anyone on the apache team wants to look at this, I'm receptive to feedback,
criticism, further instructions, and hate mail.

This is an extension to tomcat code, so it is licensed under the Apache License
v2.0.  If you feel like using this jar provided by "some guy on the internet",
feel free :)

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to