I'm about to lose my mind. How in the world do you tell CPAN to download via HTTP only? ...and NOT via a proxy.

5 Answers 5


Simplest way of having it not use FTP is to shove HTTP URLs on the front of your urllist - or replace it completely like sebastionopilla said. You can do it from inside the cpan shell too:

o conf urllist unshift http://some.cpan.mirror/here/

You can use

o conf urllist -
o conf urllist shift

to empty it first if you wish.


o conf no_proxy 1

to turn off the proxy.


o conf commit

to save the config


Try putting only HTTP URLs in your CPAN's Config.pm file, like:

'urllist' => [q[http://cpan.cict.fr/], q[http://cpan.enstimac.fr/], q[http://mirrors4.kernel.org/cpan/]],

I routinely do this and as far as I can see there's no FTP traffic to any CPAN mirror.


Try these:

  1. Before running cpan: export -n http_proxy
  2. In the cpan shell: o conf http_proxy ''
  3. To save your modified cpan config: o conf commit

That will disable any http proxy CPAN is configured to use.

cpan[1]> o conf /proxy/
cpan[2]> o conf no_proxy 1
cpan[3]> o conf commit

Set proxy username and password:

cpan[4]> o conf proxy_user your_username
cpan[5]> o conf proxy_pass your_password
cpan[6]> o conf commit

If you don't want to use a cpan shell, you can also edit your cpan config file with a text editor, in unix systems it's here:


Of course, the field to change in your particular question is 'http_proxy'.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .