На хостинговых серверах установлен Composer — пакетный менеджер для PHP, позволяющий управлять зависимостями в PHP-приложении. При необходимости вы можете использовать Composer через консоль, подключившись к серверу по SSH.
Глобальная установка Composer
Этот способ подойдет, если у вас отключена изоляция сайтов. Если изоляция включена, используйте инструкцию из раздела ниже.
Большинство фреймворков требуют при установке значительного объема memory_limit, поэтому перед установкой рекомендуем выполнить следующие действия:
- Подключитесь к серверу по SSH.
- Командой ниже модифицируйте переменную окружения PATH, добавьте алиас для упрощенного запуска в файл
.bash_profileи задайтеmemory_limit:
echo -e "export PATH=/opt/php74/bin:\$PATH\nalias composer='/opt/php74/bin/php -d memory_limit=1024M /usr/local/bin/composer'\nalias php='/opt/php74/bin/php -d memory_limit=1024M'" >> ~/.bash_profile
В примере используется PHP 7.4; может быть указана другая версия.
- Для применения изменений перезапустите соединение по SSH, либо выполните команду ниже, чтобы обновить конфигурацию оболочки и воспользоваться Composer без переподключения:
source ~/.bash_profile
Установка другой версии Composer
Следующий однострочный скрипт установит последнюю стабильную версию Composer в директорию ~/.bin:
php_ver="php7.4"; mkdir -p ~/.bin && wget -qO ~/.bin/composer https://getcomposer.org/composer-stable.phar && chmod +x ~/.bin/composer && echo -e "export PATH=/opt/${php_ver}/bin:$HOME/.bin:\$PATH\nalias php='/opt/${php_ver}/bin/php -d memory_limit=2048M'\nalias composer='/opt/${php_ver}/bin/php -d memory_limit=2048M ~/.bin/composer'" >> ~/.bash_profile && source ~/.bash_profile && echo -e "\e[32;1mOK\e[0m"
Перед выполнением скрипта отредактируйте переменную php_ver в начале команды, указав нужную версию PHP вместо 7.4.
Вы также можете установить Composer вручную по инструкции с официального сайта. Установку необходимо выполнять в домашнюю папку пользователя.
Использование Composer с изоляцией сайтов
При включенной изоляции сайт может обращаться только к файлам внутри своей директории. Если Composer установлен глобально или в другой директории, подключить установленные пакеты в код сайта не получится. Чтобы Composer и изоляция не конфликтовали, установите Composer в директорию сайта.
В примерах ниже используется сайт example.ru с PHP 8.2; укажите свои значения.
Не добавляйте переменные окружения в
~/.bash_profile, иначе Composer станет глобальным. Изоляцию отключать не нужно.
Установка Composer в директорию сайта
-
Подключитесь к серверу по SSH и перейдите в директорию сайта:
cd ~/example.ru
-
Установите Composer в директорию
.composer/bin:
mkdir -p .composer/bin && wget -qO .composer/bin/composer https://getcomposer.org/composer-stable.phar
-
Проверьте установку:
/opt/php82/bin/php .composer/bin/composer --version
Пример вывода:
Composer version 2.10.3 2026-08-27 13:34:23
PHP version 8.2.35 (/opt/php82/bin/php)
Запуск команд Composer
Выполняйте все команды из директории сайта. Команда начинается с вызова нужной версии PHP и пути к Composer:
cd ~/example.ru
/opt/php82/bin/php .composer/bin/composer <КОМАНДА>
Например, установка пакета vlucas/phpdotenv:
/opt/php82/bin/php .composer/bin/composer require vlucas/phpdotenv
Список установленных пакетов:
/opt/php82/bin/php .composer/bin/composer show
После установки в директории сайта появятся файлы composer.json, composer.lock и директория vendor.
Подключение пакетов в коде сайта
Чтобы использовать установленные пакеты, подключите автозагрузчик в коде сайта:
require_once __DIR__ . '/../vendor/autoload.php';
Путь зависит от расположения файла: vendor находится в корне директории сайта (~/example.ru/vendor/autoload.php), на одном уровне с public_html.
Пример: файл .env и phpdotenv. При включенной изоляции PHP может читать .env только из директории сайта, поэтому разместите файл внутри нее. Для загрузки переменных используйте пакет vlucas/phpdotenv, установленный командой выше.