The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


LWP::Protocol::connect - Provides HTTP/CONNECT proxy support for LWP::UserAgent


  use LWP::UserAgent;

  $ua = LWP::UserAgent->new(); 
  $ua->proxy('https', 'connect://proxyhost.domain:3128/');


Proxy Authentication

If you pass the authentication within the userinfo string of the proxy url a Basic authentication header will always be generated and sent to the proxy.

  $ua->proxy('https', 'connect://user:pw@proxyhost.domain:3128');

The more general way is to add the credentials of the proxy to the $ua object.

  $ua->credentials("localhost:3128", "Squid proxy-caching web server", "user", "pw");

In this case the first request to the proxy will fail with a "407 Proxy Auth. Required". This will cause LWP::UserAgent to choose the right LWP::Authen::<method> module to add the authentication and retry.


The LWP::Protocol::connect module provides support for using https over a proxy via the HTTP/CONNECT method.


IO::Socket::SSL, LWP::Protocol::https


Copyright 2013 Markus Benning <>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.