Pear: “go-pear.phar” Does Not Have a Signature

As I was trying to install Pear for my WampServer 2.0i installation today, I encountered a problem. When I ran the typical “go-pear.bat” script – I was hit with this message:

phar "C:\wamp\bin\php\php5.3.0\PEAR\go-pear.phar" does not have a signaturePHP W arning:  require_once(phar://go-pear.phar/index.php): failed to open stream: pha r error: invalid url or non-existent phar "phar://go-pear.phar/index.php" in C:\ wamp\bin\php\php5.3.0\PEAR\go-pear.phar on line 1236

 The error message seen when running “go-pear.bat”.

Solution

Thankfully, after searching around – I found the solution from a blogger named Latyr, who blogs in French. Since I speak French, I thought I should offer his solution in English. I expanded it into a few steps, for those that aren’t familiar with WAMP and PHP.

1) Locate the “php.ini” file.  In my case, I found it at this path:

C:\wamp\bin\php\php5.3.0\php.ini

Don’t use the WAMP system tray icon to edit this file. It didn’t work when I tried – you have to manually locate it.

2) Find the following line, in bold:

; http://php.net/phar.require-hash
;phar.require_hash = On

; http://php.net/phar.require-hash

;phar.require_hash = On

3) Uncomment the “;phar.require_hash = On”line by removing the semi-colon.

4) Change “On” to “Off”.

; http://php.net/phar.require-hash

phar.require_hash = Off

5) Save the file.

After I performed those steps, “go-pear.bat”  began working normally again.

In case you’re wondering about  the phar.require_hash option we just disabled, here’s the php.net description:

This option will force all opened Phar archives to contain some kind of signature (currently MD5, SHA1, SHA256 and SHA512 are supported), and will refuse to process any Phar archive that does not contain a signature.

See Also

The solution offered here was made possible by Latyr’s original blog post, entitled “Bug dans PHP5.3.0 Pear.bat”.

  • http://www.idea-palette.com Chris

    Thanks alot! Somebody offerred your solution to me at http://stackoverflow.com/questions/1652941/why-am… and it solved my hour long dilemma! Thank you for looking out for your fellow programmer and taking the time to post the solution you found for us English speakers!

    • http://intensedebate.com/people/mrefghi Matt Refghi

      :) Happy to help

  • Marek

    Thanks a lot. It works.

    • Nithin Chacko NInan

      Great! Thanks a lot!

      1) Locate the “php.ini” file. In my
      case, I found it at this path:

      C:wampbinphpphp5.3.0php.ini

      Don’t use the WAMP system tray icon to
      edit this file. It didn’t work when I
      tried – you have to manually locate
      it.

      this is very important.

      thanks
      Nithin Chacko Ninan

  • David

    Thanks Bro!

  • Markus

    Wonderful! Exactly what I needed

  • Pingback: The Dragon, The Cross and The Forbidden Fruit: Using WampServer (Windows7 / Apache / MySQL behind PHP) with Komodo IDE, XDebug and PEAR

  • ziom

    many thanks brutha

  • http://www.effcon.co.in Afroz Loya

    Thanks :)

  • SMMandar

    THANX,
    Great Work

  • Ming

    Great! Thanks a lot!

  • Little Ninja

    I’ve been close to sobbing for the last couple of hours in desperation stuck on this. Thank you so so much!!

  • http://www.cogfactory.net colson

    Despite this being a bit of an older post, there’s a reason why you can’t use the system tray icon to load the php.ini: there are two php.ini files.

    When you load the php.ini file from the toolbar tray, it loads the php.ini file from wamp/apache/apache2.2.11/bin

    When you execute php scripts or the .bat files for pear, it loads the php.ini found in your php directory.

    I ran into this problem trying to activate certain extensions.

  • Cool_Robert

    Thanks man, this is my second attempt at getting this up and running! I really appreciate this!

  • Alessandro

    Thank you so much!!!

  • Designx9

    Thanks heaps.

  • Minilik T.

    Thanks a lot. It worked…

  • Shan

    Thanks a lot man….

  • Alex

    Crazy! And so easy! :-) Thank you.

  • Asghar

    Thanks Alot it worked..

  • http://www.vertstudios.com/ Joseph

    Worked like a charm, thanks a bunch!

  • Alagar86

    Thanks a lot you save my time

  • Mario16

    I did exactly what You said and I still have the same error :/
    I have WAMP 2.1 with PHP v5.3.5

  • Tony

    good guide!!!

  • Phil

    Worked. Thanks a lot !

  • mce

    Thanks, it solved the problem.

  • Zeta_mili

    gracias capo.
    muchas gracias!!!!

  • http://www.facebook.com/Rawiri David Orduño

    thx so much, this saved me a headache

  • Anonymous

    Worked for me too! Thanks. :)

  • Guest

    tnx man !!

  • Najjar Fatma

    bonjour, javais le meme probleme, et jai modifié php.ini
    mais rien na changé :(

  • jerky from ohio

    ROCK & ROLL! Thank you! And thank you Google for indexing this page..

  • KK

    Thank you!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  • http://www.facebook.com/profile.php?id=100002106604470 Иван Мирошников

    Cool man!! Thanks for you translate!!