J'essaie d'installer cette extension, mais elle échoue lors de la phase de configuration. Je suis sur Ubuntu 12.04 et je viens d'installer ces paquets:
Version PHP:
PHP 5.3.10-1ubuntu3.14 with Suhosin-Patch (cli) (built: Sep 4 2014 07:08:49)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans
Voici le journal de la commande d'installation:
Sudo pecl install pecl_http
downloading pecl_http-2.1.1.tgz ...
Starting to download pecl_http-2.1.1.tgz (158,441 bytes)
.................................done: 158,441 bytes
64 source files, building
running: phpize
Configuring for:
PHP Api Version: 20090626
Zend Module Api No: 20090626
Zend Extension Api No: 220090626
Enable extended HTTP support [yes] :
where to find zlib [/usr] :
where to find libcurl [/usr] :
where to find libevent [/usr] :
building in /tmp/pear/temp/pear-build-rootqE2kgU/pecl_http-2.1.1
running: /tmp/pear/temp/pecl_http/configure --with-http --with-http-zlib-dir=/usr --with-http-libcurl-dir=/usr --with-http-libevent-dir=/home/gare88/Lib/Php/libevent-2.0.21-stable/
checking for grep that handles long lines and -e... /bin/grep
[... cut...]
checking for zlib.h... found in /usr
checking for zlib version >= 1.2.0.4... 1.2.3.4
checking for curl/curl.h... found in /usr
checking for curl-config... found: /usr/bin/curl-config
checking for curl version >= 7.18.2... 7.22.0
checking for SSL support in libcurl... yes
checking for openssl support in libcurl... no
checking for gnutls support in libcurl... no
checking for ares support in libcurl... no
checking for bundled SSL CA info... /etc/ssl/certs/ca-certificates.crt
checking for event2/event.h... not found
configure: WARNING: continuing without libevent support
checking for ext/raphf support... no
configure: error: Please install pecl/raphf and activate extension=raphf.so in your php.ini
ERROR: `/tmp/pear/temp/pecl_http/configure --with-http --with-http-zlib-dir=/usr --with-http-libcurl-dir=/usr --with-http-libevent-dir=/usr' failed
Il semble que c'est un problème avec pecl/raphf alors j'ai essayé:
Sudo pecl install raphf
pecl/raphf is already installed and is the same as the released version 1.0.4
install failed
À la fin du fichier php.ini situé sur /etc/php5/Apache2/php.ini J'ai ajouté la ligne:
extension=raphf.so
extension=propro.so
extension=http.so
Y at-il autre chose que je peux essayer?
Vous devez installer php-raphf à partir de votre gestionnaire de paquets.
pour moi, j'ai installé le module en utilisant ce qui suit. Dans votre cas, vous devriez pouvoir changer yum pour apt-get.
Sudo yum install php-raphf
Sudo yum install php-propro
Sudo pecl install pecl_http
Il vous faudra ajouter extension = http.so à votre fichier php.ini. Mais il semble que vous ayez déjà fait cela.
pecl n'installe pas réellement le fichier .so que vous recherchez.
si vous avez Ubuntu 13 ou 14, essayez pecl install pecl_http-1.7.6
car les versions plus récentes ne se chargent toujours pas pour une raison quelconque.
Sur Ubuntu 12.04.5 LTS, cela a fonctionné pour moi:
Commencez par installer certains prérequis nécessaires à la compilation:
Sudo apt-get install php-http
Sudo apt-get install php5-dev
Sudo apt-get install libcurl3
Sudo apt-get install libpcre3-dev
Sudo apt-get install libcurl4-openssl-dev
Sudo pecl install raphf
Sudo pecl install pecl_http-1.7.6
après cela, allez dans le dossier /usr/lib/php5/modules
et vérifiez si les bibliothèques sont présentes: raphf.so
, propro.so
et http.so
.
Si votre php.ini
(à /etc/php5/Apache2/php.ini
et /etc/php5/cli/php.ini
) ne contient pas ces extensions, ajoutez-les:
extension=http.so
extension=propro.so
extension=raphf.so
ou en utilisant le chemin absolu des fichiers, par ex. extension=/usr/lib/php5/modules/http.so
.
Et comme dernière étape, redémarrez votre serveur Web, chargeant ainsi la nouvelle configuration:
Sudo service Apache2 reload
Juste pour ajouter à la réponse de @ mschuett, j’ai trouvé que, lorsque j’ai eu la même erreur que le PO, le changement de ma référence d’extension dans le fichier php.ini a été décisif.
extension=raphf.so
à
extension=/usr/lib/php5/20121212/raphf.so
puis
Sudo pecl install pecl_http
De plus, les réglages suivants vous éviteront de modifier votre fichier php.ini lorsqu’une installation de pecl voudra le modifier:
pear config-set php_ini /etc/php5/Apache2/php.ini
pecl config-set php_ini /etc/php5/Apache2/php.ini
NOTE: Cela a fonctionné pour Ubuntu 14.04 LTS.
commande d'exécution
Sudo yum installe php-raphf
Sudo pecl installe pecl_http
etc/phph5/Apache2/conf.d
ajoute deux fichier
ajouter du contenu
extension = raphf.so
solr.ini
ajouter du contenu
extension = raphf.so
ajouter dans le fichier php.ini
extension = http.so extension = propro.so extension = raphf.so ou extension =/usr/lib/php5/20121212/raphf.so extension = solr.so
Je tombe sur ce problème en essayant d'installer pecl_http-2.6.0, raphf-1.1.2 et propro-1.0.2 sur Ubuntu 16.04 et php-fpm5.6. Je ne peux pas utiliser apt
pour installer raphf et propro (comme @mschuett l'a suggéré) car apt
ne peut installer que raphf 2.0.0 et propro 2.1.0, qui ne fonctionnent que pour PHP 7.
Je résous le problème en procédant comme suit sans avoir besoin de mettre à jour le fichier php.ini ni d'utiliser apt
.
Tout d'abord, pour que php-fpm charge une nouvelle extension, un fichier .ini doit être ajouté à /etc/php/5.6/mods-available
. Utilisez ensuite phpenmod
pour activer l’extension.
Donc, pour installer et activer raphf-1.1.2,
$ pecl install raphf-1.1.2
$ echo "extension=raphf.so" >> /etc/php/5.6/mods-available
$ phpenmod raphf
Notez que vous aurez peut-être besoin de Sudo
pour ces commandes.
De même, pour le propro-1.0.2
$ pecl install raphf-1.0.2
$ echo "extension=raphf.so" >> /etc/php/5.6/mods-available
$ phpenmod raphf
Si vous utilisez php -m
pour afficher toutes les extensions chargées, vous devriez voir raphf et propro dans la liste.
Vous pouvez maintenant installer pecl_http-2.6.0 avec
$ pecl install pecl_http-2.6.0
L'installation devrait se terminer avec succès.
$ pecl list
Installed packages, channel pecl.php.net:
=========================================
Package Version State
pecl_http 2.6.0 stable
propro 1.0.2 stable
raphf 1.1.2 stable
Si vous utilisez pecl
comme moi, des avertissements tels que:
install ok: channel://pecl.php.net/pecl_http-2.6.0
configuration option "php_ini" is not set to php.ini location
You should add "extension=http.so" to php.ini
ce qui se produit car les config. php_ini
de ma pear
et pecl
ne sont pas définies.