Я пробовал это 100 раз, я действительно новичок в Ubuntu и закончил с кучей ошибок, которые я даже не понимаю, может кто-нибудь, пожалуйста, помогите мне ??
Вот что я сделал:
- Я установил PHP
- Я установил libcurl затем php5-dev
- Я попытался установить расширение PECL, и он говорит, что
PHPIZE
не найден.
Ответы:
Во-первых, вам нужно будет установить PEAR через,
apt-get
чтобы получить необходимый пакет и систему распространения, которые обаPEAR
иPECL
используют. В командной строке введите:Вам будет предложено подтвердить установку. Просто нажмите «y» и введите. Если все пойдет хорошо, вы должны увидеть, как он скачал и установил пакет php-pear.
Теперь вам нужно установить пакет php5-dev, чтобы получить необходимые исходные файлы PHP5 для компиляции дополнительных модулей. Введите в командной строке следующее:
Если вы не установите пакет php5-dev и попытаетесь установить расширение PECL с помощью «pear install», вы получите следующую ошибку:
Расширение PECL_HTTP требует установки дополнительного пакета зависимостей. Вы можете пропустить это для других расширений:
Теперь мы наконец готовы установить расширение. В командной строке введите следующее, но замените «pecl_http» именем расширения PECL, которое вы устанавливаете:
Установщик может спросить вас о некоторых опциях для расширения, которое вы устанавливаете. Вероятно, вы можете просто нажать клавишу ввода один или несколько раз, чтобы принять все значения по умолчанию, если вы не хотите устанавливать конкретные параметры для своей реализации. Если все идет хорошо, модуль следует загрузить, собрать и установить.
После завершения установки вам, вероятно, будет предложено добавить строку «extension =» в ваш файл php.ini. Откройте файл php.ini в вашем любимом текстовом редакторе и добавьте строку под разделом «Динамические расширения». В Ubuntu файл php.ini, кажется, находится в папке / etc / php5 / apache2:
В этом примере установка расширения pecl_http попросила меня добавить «extension = http.so». Теперь, когда файл php.ini обновлен, необходимо будет перезапустить Apache, чтобы загрузить новое расширение:
источник
источник
make
перед этим. Просто сделайsudo apt-get install make
php7.0-dev
пакет:sudo apt-get install php7.0-dev
В дополнение к ответу @ Ask мне также нужно было сделать:
перед запуском,
pecl install pecl_http
потому что я получаю эту ошибку оpcre.h
:Кроме того, вместо редактирования
php.ini
файла я создал новый файл с именемpecl-http.ini
вconf.d
подкаталоге, где находитсяphp.ini
файл (в Ubuntu/etc/php5/apache2/conf.d
)И мне нужно было добавить в три строки:
Наконец, так как в этой установленной версии
2.0.6
я не мог использоватьhttp_get_request_headers
функцию, но мне нужно было вместо этого использовать версию с пространством имен,\http\Env::getRequestHeader()
подробности см. ЗдесьPS: не забудьте перезапустить Apache, когда вы закончите (
service apache2 restart
)источник
extension=json.so
передhttp.so
строкой, несмотря на то, чтоjson.ini
файл уже был включен вconf.d
.В дополнение к ответам Maythux и cwd вы, возможно, не захотите редактировать свой файл php.ini, поскольку эти изменения могут потеряться при обновлении.
Debian (и, следовательно, Ubuntu) обрабатывает модули php так же, как модули apache. Взгляните
/etc/php5
, вы найдете такие каталоги:Когда вы смотрите в,
mods-available
вы видите несколько файлов, таких как:Чтобы включить / отключить эти доступные моды для всех API (apache, cli, cgi), вы можете просто использовать команды
php5enmod
илиphp5dismod
так:соответственно
Это создаст (или удалит) символические ссылки на файл конфигурации модуля в
apache2/conf.d/
иcli/conf.d/
.Вы также можете указать sapi для включения / отключения мода (в данном случае apache):
pecl install
может не создать файл конфигурации дляraphf
(и других модулей, установленных с ним), но вы можете создать его самостоятельно:Затем напишите в следующих строках:
Приоритет по умолчанию - 20. Это может зависеть от типа модуля, какой приоритет вы должны использовать. Для
raphf
20 вроде нормально. ( Обновление : если вы ищете pecl_http, в версии 2 он должен быть загружен послеrapfh
иpropro
, таким образом установить приоритет вmods-available/http.ini
с30
.)С этим вы можете включить модуль:
(Примечание: мой ответ зависит от Ubuntu 14.04, но может работать аналогичным образом для 13.04, см. Http://www.lornajane.net/posts/2012/managing-php-5-4-extensions-on-ubuntu )
источник
Теперь, установите PEAR таким образом, чтобы получить его из источника:
источник