Ubuntu pecl установить pecl http сбой
Я пытаюсь установить это расширение, но оно терпит неудачу на этапе конфигурации. Я на Ubuntu 12.04 и я только что установил эти пакеты:
- libcurl3-openssl-dev
- php-http
- libpcre3-dev
- libcurl3
- php-pear
- php5-dev
версия 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
вот журнал команды установки:
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
кажется, что это проблема с pecl/raphf так я пробовал:
sudo pecl install raphf
pecl/raphf is already installed and is the same as the released version 1.0.4
install failed
в конце php.ini файл находится на /etc/php5/apache2 / php.Ини Я добавил строку:
extension=raphf.so
extension=propro.so
extension=http.so
что-нибудь еще я могу попробовать?
6 ответов
вам необходимо установить php-raphf из диспетчера пакетов.
для меня я установил модуль, используя следующие. В вашем случае вы должны иметь возможность переключиться на Yum для apt-get.
sudo yum install php-raphf
sudo yum install php-propro
sudo pecl install pecl_http
вы должны добавить расширение = НТТР.так в PHP.ini-файл. Но, похоже, вы уже это сделали.
pecl фактически не устанавливает .Итак, файл, который вы ищете.
если у вас есть ubuntu 13 или 14, попробуйте pecl install pecl_http-1.7.6
новых версий все равно не загружается почему-то.
на Ubuntu 12.04.5 LTS это сработало для меня:
Сначала установите некоторые предварительные условия, необходимые для компиляции:
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
после этого перейдите в папку /usr/lib/php5/modules
и проверьте, есть ли библиотеки:raphf.so
, propro.so
и http.so
.
если php.ini
(at /etc/php5/apache2/php.ini
и /etc/php5/cli/php.ini
) не содержит этих расширений, добавьте их:
extension=http.so
extension=propro.so
extension=raphf.so
или, используя абсолютный путь к файлам, например,extension=/usr/lib/php5/modules/http.so
.
и как последний шаг перезапустите веб-сервер, загрузив новую конфигурацию:
sudo service apache2 reload
просто чтобы добавить к ответу @mschuett, я обнаружил, что когда я получил ту же ошибку, что и OP, которая изменила мою ссылку на расширение в php.Ини сделал трюк.
extension=raphf.so
до
extension=/usr/lib/php5/20121212/raphf.so
затем
sudo pecl install pecl_http
также установка следующего не позволит вам вручную редактировать php.ini-файл, Когда установка pecl хочет изменить его:
pear config-set php_ini /etc/php5/apache2/php.ini
pecl config-set php_ini /etc/php5/apache2/php.ini
Примечание: это сработало для Ubuntu 14.04 LTS.
выполнить команду
-
sudo yum установить php-raphf
- sudo yum установить php-propro
sudo pecl установить pecl_http
etc/phph5/apache2 / conf.d
добавить два файла
- raphf.ini
добавить содержимое
расширения=raphf.так
solr.ini
добавить содержимое
расширения=raphf.так
добавить в php.ini-файл
расширение=http.Итак, расширение=propro.так что ... расширение=raphf.так или расширение=/УСР/Либ/в php5/20121212/raphf.так расширение=solr.так что
я сталкиваюсь с этой проблемой при попытке установить pecl_http-2.6.0, raphf-1.1.2 и propro-1.0.2 на Ubuntu 16.04 и php-fpm5.6. Я не могу использовать apt
установить raphf и propro (как предложил @mschuett), потому что apt
можно установить только raphf 2.0.0 и propro 2.1.0, который работает только для PHP 7.
я решаю проблему с помощью следующих шагов без необходимости обновления php.ini или с помощью apt
.
прежде всего, чтобы получить php-fpm для загрузки нового расширения, -. ini-файл должен быть добавлен к /etc/php/5.6/mods-available
. Тогда используйте phpenmod
включить расширение.
Итак, чтобы установить и включить raphf-1.1.2,
$ pecl install raphf-1.1.2
$ echo "extension=raphf.so" >> /etc/php/5.6/mods-available
$ phpenmod raphf
обратите внимание, что вам может понадобиться sudo
для этих команд.
аналогично, для propro-1.0.2
$ pecl install raphf-1.0.2
$ echo "extension=raphf.so" >> /etc/php/5.6/mods-available
$ phpenmod raphf
если вы используете php -m
чтобы просмотреть все загруженные расширения, вы должны увидеть raphf и propro в списке.
теперь вы можете установить pecl_http-2.6.0 с
$ pecl install pecl_http-2.6.0
в установка должна завершиться успешно.
$ 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
если вы используете pecl
как и я, вы можете увидеть предупреждение, такое как:
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
что происходит, потому что php_ini
конфигурация моего pear
и pecl
не установлено.