Issue #4922 has been reported by Hiroshi NAKAMURA.

----------------------------------------
Bug #4922: Bug in Webrick httprequest.rb using multiple proxies and fix
http://redmine.ruby-lang.org/issues/4922

Author: Hiroshi NAKAMURA
Status: Assigned
Priority: Normal
Assignee: Hiroshi NAKAMURA
Category: lib
Target version: 1.9.3
ruby -v: any


(From [ruby-core:33872])

Hi.

This is my first post to this mailing list, so please tell me, if I posted this the wrong place, or I in any other way should do something different.

I have been playing around with Webrick for some time now, and decided to set up a virtual machine with a hosted webrick based application.

For every request, the request goes through two Apache proxies because of lack of IP adresses. The forwarded hostname is therefore split by commas like this:

Host= domain.com, someotherdomainoorip.com


Webrick doesnt handle this well. It looks like it only supports one single forwarded hostname.

This can however easily be fixed by changing like 291 in httprequest.rb from:

host, port = @forwarded_host, @forwarded_port

To:

host, port = @forwarded_host.split(",")[0].strip, @forwarded_port



If not, Webrick will not handle the request and raise an error.


My fix may be more than a hack than a fix, but for now it works and makes Webrick actually handle the request instead of crashing. I have attached a .diff I made with Subversion.


Thank you for a great programming language.


-- 
Kasper Johansen


-- 
http://redmine.ruby-lang.org