Capturing referer in webrick proxy

Hi all,
I am doing a small proxy using the WEBrick::HTTPProxyServer class and
I would like to capture the
referer of each HTTP request. Specifically, I need it in order to keep
trace of the html page linking to other in-line meda
(such as gif,png,etc…).

this is my stub code for the proxy looks like:

#from http://www.webrick.org/#example

require ‘webrick/httpproxy’
s = WEBrick::HTTPProxyServer.new(
:Port => 2200,
:ProxyContentHandler => Proc.new{|req,res|
#request handling here
}
)
trap(“INT”){ s.shutdown }
s.start

Hi,

WEBrick provides a simple access log formatter.
You can specify another format. See webrick/accesslog.
Another way is use of :RequestCallback instead of :ProxyContentHandler.
A redundant example of both of them:

require ‘webrick/httpproxy’
require ‘webrick/accesslog’

s = WEBrick::HTTPProxyServer.new(
:Port => 2200,
:AccessLog => [
[ $stderr, WEBrick::AccessLog::REFERER_LOG_FORMAT ]
],
:RequestCallback => proc{|req,res|
puts “Referer: #{req.header[“referer”]}”
}
)
trap(“INT”){ s.shutdown }
s.start

HTH,

Gotoken

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs