установка composer на общем хосте

Я пытаюсь установить composer на свой общий хост впервые.

Когда я бегу curl -sS https://getcomposer.org/installer | php
Я получаю Composer успешно установлен
Пользователь это: php composer.phar

когда я бегу php composer.phar я получаю эту враждующую ошибку:

Предупреждение: Composer должен вызываться через CLI-версию PHP, а не cgi-fcgi SAPI

Любые идеи о том, как это исправить ? и почему я получаю эту ошибку? 🙁

когда я бегу php -v я вернул это

PHP 5.4.39 (cgi-fcgi) (built: Mar 25 2015 14:20:20)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
with Zend Guard Loader v3.3, Copyright (c) 1998-2013, by Zend Technologies

Нужно ли мне запускать это, используя версию CLI, если да, то как мне это сделать?

Любая помощь будет хорошо, спасибо.

7

Решение

Я решил это путем явного вызова версии PHP, которую он запрашивал. Имейте в виду, что в среде с общим сервером часто работает несколько версий PHP, и, хотя вы, возможно, установили значение по умолчанию в конфигурации cPanel, команды bash часто переходят в другую (более низкую) версию.

Во-первых, я создал bin каталог и переместил composer.phar в него. Затем я добавил этот псевдоним в свой .bash_profile, и он работал как шарм:

alias composer="/usr/php/54/usr/bin/php-cli ~/bin/composer.phar"

Надеюсь это поможет!

6

Другие решения

Поскольку Composer теперь доступен через WHM, вы можете использовать его, чтобы найти его:

which composer

Этот возвращенный путь «/ opt / cpanel / composer / bin / composer» для меня. Если это ничего не возвращает, игнорируйте оставшуюся часть этого ответа, так как Composer недоступен для вас на системном уровне.

Теперь вы можете использовать php-cli чтобы вызвать это с абсолютным путем Composer:

php-cli /opt/cpanel/composer/bin/composer install
php-cli /opt/cpanel/composer/bin/composer update
php-cli /opt/cpanel/composer/bin/composer require whatever/example

Однако вам может понадобиться псевдоним php-cli если ваша система утверждает, что это не найдено. Это очень сильно зависит от того, как PHP был развернут на WHM-сервере. Вы можете сделать это, добавив псевдоним пользователя в конец вашего файла .bashrc следующим образом:

alias php-cli=/opt/cpanel/ea-php72/root/usr/bin/php

замещать ea-php72 с выпуском PHP, который вы хотите использовать. Отправьте это как команду в оболочке, чтобы сделать ее доступной немедленно, иначе она станет доступной, когда вы откроете следующую сессию Bash.

Если вы хотите сделать это доступным только с composer в одиночку вы можете создать этот псевдоним снова в «.bashrc»:

alias composer=/opt/cpanel/ea-php72/root/usr/bin/php /opt/cpanel/composer/bin/composer
1

Расположение установленных версий php зависит от хоста. Попробуйте найти их с помощью:

locate /bin/php

Для меня это перечисляет все версии php, и я могу заменить php, например:

/usr/bin/php71-cli

Для доступа к версии интерфейса командной строки, а не к версии по умолчанию cgi. Затем, как указано @Diggery, вы можете создать псевдоним.

alias composer='/usr/bin/php71-cli bin/composer.phar'

На StackOverflow есть много предложений о том, как протестировать установку Cli, но вышеприведенное — единственное, что сработало для меня.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector