http://www.perlmonks.org?node_id=415166


in reply to HTTP::Proxy : changing the URI

Ah, where to begin?

  1. $headers are the headers that are going to be sent back to the connection that made the request to the proxy. $message is either going to be an HTTP::Request or an HTTP::Response object. You specifically want to filter HTTP::Requests.
  2. What is $message->$headers->header supposed to do?
  3. You should be using HTTP::Proxy::HeaderFilter::simple. You may have been getting a message along the lines of "HTTP::Proxy::HeaderFilter cannot be used as a filter".
  4. You're going to need to patch HTTP::Proxy to rewrite the requested uri for you somewhere in HTTP::Proxy::serve_connections. Right now it's getting undef when it checks $req->uri->scheme. To change this up, you can have something along the lines of:
    $req->uri( $self->url . substr($req->uri,1) ) if $req->uri =~ m!^/!;
    Please note that if you do not filter this request, your proxy will redirect to itself time and time again. Also, set your host to something.

Hopefully something in here will help you.