Заощадьте 15% на всіх хостингових послугах

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код: Skills Почати
Рубрики
Linux Віртуальні сервери

Як встановити PHP Composer на спільному/віртуальному хостингу: повний посібник

PHP Composer — це фактичний стандартний менеджер залежностей для PHP, який дозволяє розробникам оголошувати, встановлювати та керувати бібліотеками, від яких залежать їхні проекти. Незалежно від того, чи ви створюєте додаток Laravel, API Symfony або користувацький проект PHP, Composer є незамінним інструментом у вашому робочому процесі.

Цей комплексний посібник проведе вас через кожен крок встановлення PHP Composer у віртуальному або спільному хостинг-середовищі — від доступу SSH до глобальної конфігурації та практичного використання.

Що таке PHP Composer і навіщо він вам потрібен?

PHP Composer — це менеджер пакетів, який керує управлінням залежностями на рівні проекту. Замість ручного завантаження бібліотек та управління автозавантаженням, Composer автоматично розв’язує залежності, завантажує правильні версії та генерує оптимізований автозавантажувач.

Ключові переваги включають:

  • Автоматичне розв’язання залежностей — Composer обробляє конфлікти версій та вкладені залежності.
  • Відтворювані збірки — Файл composer.lock гарантує, що кожен член команди та середовище розгортання використовують однакові версії пакетів.
  • Величезна екосистема — Доступ до понад 350 000 пакетів на Packagist, репозиторії Composer за замовчуванням.
  • PSR-4 автозавантаження — Усуває необхідність у ручних require та include виразах у всьому вашому коді.

Якщо ви запускаєте PHP-додатки на Спільному веб-хостингу або в середовищі VPS Hosting, встановлення Composer — це один із перших кроків до професійного, придатного для обслуговування робочого процесу розробки.

Передумови

Перед тим як почати, переконайтеся, що виконані такі вимоги:

ВимогаДеталі
Доступ до хостингуSSH доступ увімкнено на вашому обліковому записі хостингу
Версія PHPPHP 7.2 або вище (PHP 8.x настійно рекомендується)
Розширення PHPopenssl, phar, mbstring, json мають бути увімкнені
ДозволиМожливість запису в домашній каталог або каталог у вашому $PATH
Клієнт терміналуTerminal (macOS/Linux) або PuTTY / Windows Terminal (Windows)

> Примітка: Якщо ви користуєтеся планом керованого спільного хостингу без доступу SSH, зв’яжіться з вашим постачальником хостингу, щоб увімкнути його. Плани спільного веб-хостингу AlexHost включають SSH доступ, що дає вам необхідний контроль.

Крок 1: Підключіться до вашого сервера через SSH

Відкрийте програму терміналу та встановіть SSH-з’єднання з вашим обліковим записом хостингу:

ssh username@yourdomain.com

Замініть username на ваше фактичне SSH-ім’я користувача та yourdomain.com на вашу назву домену або IP-адресу сервера.

Приклад:

ssh john@203.0.113.45

Після автентифікації ви потрапите в домашній каталог (зазвичай /home/username/). Ви можете підтвердити вашу поточну розташування за допомогою:

pwd

Крок 2: Перевірте доступність PHP

Перед завантаженням Composer переконайтеся, що PHP встановлено і доступно з командного рядка:

php -v

Ви повинні побачити результат, подібний до:

PHP 8.2.10 (cli) (built: Sep  5 2023 08:15:22) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.10, Copyright (c) Zend Technologies

Якщо PHP не знайдено або версія нижче 7.2, зв’яжіться з вашим хостинг-провайдером або оновіть своє середовище. Користувачі плану VPS Hosting мають повний контроль для встановлення або оновлення версій PHP за потребою.

Також перевірте, що необхідні розширення завантажені:

php -m | grep -E 'openssl|phar|mbstring|json'

Усі чотири розширення повинні з’явитися у результаті.

Крок 3: Завантажте інсталятор Composer

Composer надає офіційний PHP-базований скрипт інсталятора. Завантажте його за допомогою наступної команди:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

Це завантажує скрипт інсталятора composer-setup.php у ваш поточний робочий каталог.

Крок 4: Перевірте цілісність інсталятора

Цей крок критичний для безпеки. Завжди перевіряйте хеш SHA-384 інсталятора перед його виконанням, щоб переконатися, що файл не був змінений або пошкоджений під час завантаження.

4a. Отримайте очікуваний хеш зі сторінки офіційних публічних ключів Composer:

Відвідайте https://composer.github.io/pubkeys.html, щоб отримати найновіший хеш інсталятора.

4b. Запустіть команду перевірки:

HASH="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"

Потім порівняйте його з опублікованим хешем:

php -r "if (hash_file('sha384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Якщо ви бачите "Installer verified", продовжуйте. Якщо ви бачите "Installer corrupt", негайно зупиніться, видаліть файл і завантажте його заново.

Крім того, ви можете використати однорядкову команду з офіційної документації Composer, замінивши EXPECTED_HASH значенням зі сторінки публічних ключів:

php -r "if (hash_file('sha384', 'composer-setup.php') === 'EXPECTED_HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Крок 5: Запустіть інсталятор Composer

Після перевірки інсталятора виконайте його для встановлення Composer:

php composer-setup.php

При успішному виконанні ви побачите вихід подібний до:

All settings correct for using Composer
Downloading...

Composer (version 2.x.x) successfully installed to: /home/username/composer.phar
Use it: php composer.phar

Файл composer.phar тепер створено у вашому поточному каталозі. На цьому етапі ви вже можете використовувати Composer, викликаючи php composer.phar, але зробити його глобально доступним набагато зручніше.

Крок 6: Очистити скрипт інсталятора

Видаліть скрипт налаштування, оскільки він більше не потрібен:

php -r "unlink('composer-setup.php');"

Крок 7: Встановлення Composer глобально

Щоб запустити Composer з будь-якого місця у вашій системі, використовуючи лише команду composer, перемістіть двійковий файл composer.phar у каталог, включений у $PATH вашої системи.

На VPS або виділеному сервері (з доступом sudo):

sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer

На спільному хостингу (без доступу sudo):

Якщо у вас немає привілеїв sudo, встановіть Composer локально у вашому домашньому каталозі:

mkdir -p ~/bin
mv composer.phar ~/bin/composer
chmod +x ~/bin/composer

Потім додайте ~/bin до вашого $PATH, додавши наступний рядок до вашого ~/.bashrc або ~/.bash_profile:

export PATH="$HOME/bin:$PATH"

Перезавантажте конфігурацію shell:

source ~/.bashrc

> Корисна порада: Якщо вам потрібен повний доступ root і більший контроль над вашим PHP середовищем, розгляньте можливість оновлення до плану VPS Hosting або Dedicated Server для неограниченої конфігурації на рівні системи.

Крок 8: Перевірка встановлення

Підтвердіть, що Composer встановлений і доступний глобально:

composer --version

Очікуваний результат:

Composer version 2.x.x 2024-xx-xx xx:xx:xx

Для повної діагностики вашого середовища виконайте:

composer diagnose

Ця команда перевіряє конфігурацію PHP, мережеву підключеність та параметри Composer, повідомляючи про будь-які потенційні проблеми.

Крок 9: Використання Composer для управління залежностями PHP

Тепер, коли Composer встановлено, ось як його ефективно використовувати у ваших PHP проектах.

9a. Ініціалізація нового проекту

Перейдіть до каталогу вашого проекту та ініціалізуйте новий проект Composer:

cd /path/to/your/project
composer init

Інтерактивний помічник запитає вас про:

  • Назву пакету (наприклад, yourname/project)
  • Опис
  • Інформацію про автора
  • Мінімальну стабільність
  • Необхідні залежності

Це генерує файл composer.json — серце конфігурації залежностей вашого проекту.

9b. Встановлення пакету

Щоб додати бібліотеку до вашого проекту, використовуйте команду require:

composer require vendor/package-name

Приклади з реального світу:

# Install Guzzle HTTP client
composer require guzzlehttp/guzzle

# Install Carbon date library
composer require nesbot/carbon

# Install Monolog logging library
composer require monolog/monolog

Composer розв’яже залежності, завантажить пакети в каталог vendor/ та оновить composer.json та composer.lock.

9c. Встановлення всіх залежностей з composer.json

При розгортанні проекту або клонуванні репозиторію встановіть усі оголошені залежності за допомогою:

composer install

Для виробничих середовищ використовуйте прапор --no-dev для пропуску пакетів, призначених тільки для розробки:

composer install --no-dev --optimize-autoloader

9d. Оновлення залежностей

Щоб оновити всі пакети до їхніх найновіших дозволених версій:

composer update

Щоб оновити конкретний пакет:

composer update vendor/package-name

9e. Автозавантаження

Composer автоматично генерує автозавантажувач. Включіть його на початку вашої точки входу PHP:

<?php
require 'vendor/autoload.php';

Цей один рядок дає вам доступ до всіх встановлених пакетів та будь-яких користувацьких просторів імен, які ви визначите в composer.json.

Усунення поширених проблем

ПроблемаПричинаРішення
composer: command not foundBinary не в $PATHДодайте каталог встановлення до $PATH та перезавантажте shell
PHP Fatal error: Allowed memory size exhaustedЛіміт пам’яті PHP занадто низькийЗапустіть php -d memory_limit=-1 /usr/local/bin/composer install
SSL certificate problemВідсутні сертифікати CAВстановіть пакет ca-certificates або оновіть конфіг openssl PHP
The requested PHP extension ... is missingНеобхідне розширення вимкненоУвімкніть розширення в php.ini або зв’яжіться з вашим хостингом
Доступ заборонено на /usr/local/binНемає доступу sudoВстановіть Composer локально в ~/bin як описано в Кроці 7

Утримання Composer у актуальному стані

Composer включає вбудований механізм самооновлення. Періодично запускайте наступну команду, щоб переконатися, що у вас встановлена найновіша версія:

composer self-update

Щоб повернутися до попередної версії, якщо потрібно:

composer self-update --rollback

Утримання актуальної версії гарантує, що ви отримуватимете найновіші патчі безпеки, виправлення помилок та поліпшення продуктивності.

Вибір правильного хостинг-середовища для PHP розробки

Хостинг-середовище, яке ви виберете, суттєво впливає на вашу здатність ефективно використовувати такі інструменти, як Composer.

  • Спільний веб-хостинг — Підходить для менших PHP проектів. SSH доступ доступний, але системні зміни обмежені. Composer можна встановити локально у вашому домашньому каталозі.
  • VPS хостинг — Ідеальний для більшості PHP розробників. Повний root доступ дозволяє глобальне встановлення Composer, користувацькі конфігурації PHP та повний контроль над вашим стеком.
  • VPS з cPanel — Поєднує потужність VPS з зручністю графічного інтерфейсу керування, що робить управління PHP та Composer ще більш доступним.
  • Виділені сервери — Найкраще для високонавантажених PHP додатків, які потребують максимальної продуктивності, ізоляції та доступності ресурсів.

Поєднайте ваш хостинг з належним SSL сертифікатом для захисту ваших PHP додатків та API кінцевих точок у виробництві.

Висновок

Встановлення PHP Composer у віртуальному або спільному хостингу — це простий процес, який значно покращує ваш робочий процес розробки PHP. Дотримуючись цього посібника, ви:

  1. ✅ Підключилися до свого сервера через SSH
  2. ✅ Перевірили доступність PHP та необхідні розширення
  3. ✅ Завантажили та криптографічно перевірили інсталятор Composer
  4. ✅ Встановили Composer глобально або локально залежно від вашого рівня доступу
  5. ✅ Дізналися, як ініціалізувати проекти, встановлювати пакети та керувати залежностями

Composer — це не просто зручність — це професійний стандарт. Його постійне оновлення та послідовне використання в усіх ваших проектах гарантує, що ваші PHP-додатки залишаються безпечними, легкими у обслуговуванні та масштабованими.

Незалежно від того, чи ви запускаєте невеликий сайт на Спільному веб-хостингу або складний додаток на Виділеному сервері, AlexHost надає інфраструктуру та середовища з SSH, які вам потрібні для ефективної роботи з Composer.