Ubuntu 16.04.2
LSPHP7.0
wget -O - http://rpms.litespeedtech.com/debian/enable_lst_debain_repo.sh | bash
apt install -y lsphp70
Потом я добавил /usr/local/lsws/lsphp70/bin
на $ PATH и сделал символическую ссылку для /usr/local/lsws/lsphp70/bin/php7.0
в /usr/local/lsws/lsphp70/bin/php
, Таким образом, я могу запустить php в терминале как cli версию.
apt install composer
composer require geoip2/geoip2:~2.0
Я получил ошибку сказал the requested PHP extension curl is missing from your system.
А также сказано
To enable extensions, verify that they are enabled in those .ini files:
- /etc/php/7.0/cli/php.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
Но когда я бегу php -i | grep php.ini
это показывает, что INI не /etc/php/7.0/cli/php.ini
но /usr/local/lsws/lsphp70/etc/php/7.0/litespeed/php.ini
Дальше больше бегаю php --ini
, это показывает:
Configuration File (php.ini) Path: /usr/local/lsws/lsphp70//etc/php/7.0/litespeed/
Loaded Configuration File: /usr/local/lsws/lsphp70/etc/php/7.0/litespeed/php.ini
Scan for additional .ini files in: /usr/local/lsws/lsphp70//etc/php/7.0/mods-available/
Additional .ini files parsed: /usr/local/lsws/lsphp70//etc/php/7.0/mods-available/curl.ini,
/usr/local/lsws/lsphp70//etc/php/7.0/mods-available/imap.ini,
/usr/local/lsws/lsphp70//etc/php/7.0/mods-available/json.ini,
/usr/local/lsws/lsphp70//etc/php/7.0/mods-available/mysqli.ini,
/usr/local/lsws/lsphp70//etc/php/7.0/mods-available/opcache.ini,
/usr/local/lsws/lsphp70//etc/php/7.0/mods-available/pdo_mysql.ini
Как можно получить php cli /etc/php/7.0/cli/php.ini
как его файл конфигурации php? Кто-нибудь дает подсказку? Благодарю.
Ubuntu обычно устанавливает системный php по умолчанию (в настоящее время php7.0) в / usr / bin / php
Composer обычно вызывает PHP, определенный в $ PATH, обычно / usr / bin / php.
Ошибка «запрошенный curl расширения PHP отсутствует в вашей системе» означает, что системный по умолчанию Ubuntu php7.0 curl отсутствует. Разрешить:
apt-get install php7.0-curl
Пока это должно решить вашу проблему уже.
Веб-сервер LiteSpeed обычно использует API-интерфейс LiteSpeed для взаимодействия с механизмом PHP, который работает быстрее, чем другие API. В репозитории LiteSpeed Ubuntu / Debian он предоставляет разные версии lsphp, которые будут находиться в другом месте, отличном от системного по умолчанию, обычно в / usr / local / lsws / lsphpxx / bin /.
Composer обычно будет использовать системное местоположение php по умолчанию, как описано выше. Если вы хотите перезаписать путь PHP для использования двоичного файла lsphp70 php, вам нужно будет добавить этот путь в начало $ PATH.
export PATH="/usr/local/lsws/lsphp70/bin/:$PATH"
Таким образом, когда вы запускаете:
which php
Система должна использовать php, найденный первым в PATH, который /usr/local/lsws/lsphp70/bin/php
В этом случае, когда вы видите подобное сообщение об ошибке php-curl отсутствует, вы должны выполнить:
apt-get install lsphp70-curl
решить проблему.
Чтобы создать новый PATH навсегда, вы можете отредактировать ~ / .profile или .bashrc, или любым другим подобным способом, который выходит за рамки обсуждения этой темы.
Других решений пока нет …