Cum să instalezi PHP Composer pe Shared/Virtual Hosting: Un ghid complet
PHP Composer este managerul de dependențe de facto standard pentru PHP, permițând dezvoltatorilor să declare, să instaleze și să gestioneze bibliotecile de care proiectele lor depind. Indiferent dacă construiești o aplicație Laravel, un API Symfony sau un proiect PHP personalizat, Composer este un instrument indispensabil în fluxul tău de lucru.
Acest ghid cuprinzător te ghidează prin fiecare pas al instalării PHP Composer într-un mediu de găzduire virtuală sau partajată — de la accesul SSH la configurarea globală și utilizarea în lumea reală.
Ce este PHP Composer și de ce ai nevoie de el?
PHP Composer este un manager de pachete care gestionează gestionarea dependențelor la nivel de proiect. În loc să descarci manual bibliotecile și să gestionezi autoîncărcarea, Composer rezolvă dependențele automat, descarcă versiunile corecte și generează un autoîncărcător optimizat.
Beneficiile cheie includ:
- Rezolvarea automată a dependențelor — Composer gestionează conflictele de versiuni și dependențele imbricate.
- Compilări reproductibile — Fișierul
composer.lockasigură că fiecare membru al echipei și mediul de implementare utilizează versiuni identice de pachete. - Ecosistem vast — Acces la peste 350.000 de pachete pe Packagist, depozitul implicit al Composer.
- Autoîncărcare PSR-4 — Elimină declarațiile manuale
requireșiincludeîn întregul cod.
Dacă rulezi aplicații PHP pe Găzduire Web Partajată sau într-un mediu de Găzduire VPS, instalarea Composer este unul dintre primii pași către un flux de lucru profesional și ușor de întreținut.
Cerințe preliminare
Înainte de a începe, confirmă că următoarele cerințe sunt îndeplinite:
| Cerință | Detalii |
|---|---|
| Acces la găzduire | Acces SSH activat pe contul tău de găzduire |
| Versiunea PHP | PHP 7.2 sau mai recent (PHP 8.x puternic recomandat) |
| Extensii PHP | openssl, phar, mbstring, json trebuie să fie activate |
| Permisiuni | Capacitatea de a scrie în directorul tău home sau într-un director din $PATH |
| Client terminal | Terminal (macOS/Linux) sau PuTTY / Windows Terminal (Windows) |
> Notă: Dacă ești pe un plan de găzduire partajată gestionată fără acces SSH, contactează furnizorul tău de găzduire pentru a-l activa. Planurile de Găzduire Web Partajată ale AlexHost includ acces SSH, oferindu-ți controlul de care ai nevoie.
Pasul 1: Conectează-te la serverul tău prin SSH
Deschide aplicația terminal și stabilește o conexiune SSH la contul tău de găzduire:
ssh username@yourdomain.comÎnlocuiește username cu numele tău de utilizator SSH real și yourdomain.com cu domeniul tău sau adresa IP a serverului.
Exemplu:
ssh john@203.0.113.45După autentificare, vei ajunge în directorul tău home (de obicei /home/username/). Poți confirma locația curentă cu:
pwdPasul 2: Verifică dacă PHP este disponibil
Înainte de a descărca Composer, confirmă că PHP este instalat și accesibil din linia de comandă:
php -vAr trebui să vezi o ieșire similară cu:
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 TechnologiesDacă PHP nu este găsit sau versiunea este sub 7.2, contactează furnizorul tău de găzduire sau actualizează mediul tău. Utilizatorii pe un plan de Găzduire VPS au control deplin pentru a instala sau actualiza versiunile PHP după cum este necesar.
De asemenea, verifică că extensiile necesare sunt încărcate:
php -m | grep -E 'openssl|phar|mbstring|json'Toate patru extensiile ar trebui să apară în ieșire.
Pasul 3: Descarcă instalatorul Composer
Composer oferă un script oficial de instalare bazat pe PHP. Descarcă-l folosind următoarea comandă:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"Aceasta descarcă scriptul instalator composer-setup.php în directorul tău de lucru curent.
Pasul 4: Verifică integritatea instalatorului
Acest pas este critic pentru securitate. Verifică întotdeauna hash-ul SHA-384 al instalatorului înainte de a-l executa pentru a te asigura că fișierul nu a fost modificat sau corupt în timpul descărcării.
4a. Preluați hash-ul așteptat din pagina oficială Composer Public Keys:
Vizitează https://composer.github.io/pubkeys.html pentru a prelua cel mai recent hash al instalatorului.
4b. Rulează comanda de verificare:
HASH="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"Apoi compară-l cu hash-ul publicat:
php -r "if (hash_file('sha384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"Dacă vezi "Installer verified", continuă. Dacă vezi "Installer corrupt", oprește imediat, șterge fișierul și descarcă-l din nou.
Alternativ, poți folosi one-liner-ul din documentația oficială Composer, înlocuind EXPECTED_HASH cu valoarea din pagina cheilor publice:
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;"Pasul 5: Rulează instalatorul Composer
Cu instalatorul verificat, execută-l pentru a instala Composer:
php composer-setup.phpDupă execuția cu succes, vei vedea o ieșire similară cu:
All settings correct for using Composer
Downloading...
Composer (version 2.x.x) successfully installed to: /home/username/composer.phar
Use it: php composer.pharUn fișier composer.phar este acum creat în directorul tău curent. În acest stadiu, poți deja folosi Composer apelând php composer.phar, dar a-l face accesibil global este mult mai convenabil.
Pasul 6: Curăță scriptul instalatorului
Elimină scriptul de configurare deoarece nu mai este necesar:
php -r "unlink('composer-setup.php');"Pasul 7: Instalează Composer global
Pentru a rula Composer de oriunde pe sistemul tău folosind doar comanda composer, mută binarul composer.phar într-un director inclus în $PATH al sistemului tău.
Pe un VPS sau Server Dedicat (cu acces sudo):
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composerPe Găzduire Partajată (fără acces sudo):
Dacă nu ai privilegii sudo, instalează Composer local în directorul tău home:
mkdir -p ~/bin
mv composer.phar ~/bin/composer
chmod +x ~/bin/composerApoi adaugă ~/bin la $PATH prin adăugarea următoarei linii la ~/.bashrc sau ~/.bash_profile:
export PATH="$HOME/bin:$PATH"Reîncarcă configurația shell:
source ~/.bashrc> Pro Tip: Dacă ai nevoie de acces complet root și mai mult control asupra mediului tău PHP, ia în considerare actualizarea la un plan de Găzduire VPS sau un Server Dedicat pentru configurare nerestricționată la nivel de sistem.
Pasul 8: Verifică instalarea
Confirmă că Composer este instalat și accesibil global:
composer --versionIeșire așteptată:
Composer version 2.x.x 2024-xx-xx xx:xx:xxPentru o diagnosticare completă a mediului tău, rulează:
composer diagnoseAceastă comandă verifică configurația PHP, conectivitatea rețelei și setările Composer, raportând orice probleme potențiale.
Pasul 9: Utilizarea Composer pentru gestionarea dependențelor PHP
Acum că Composer este instalat, iată cum să-l folosești eficient în proiectele tale PHP.
9a. Inițializează un proiect nou
Navighează la directorul proiectului tău și inițializează un proiect Composer nou:
cd /path/to/your/project
composer initAsistentul interactiv te va solicita:
- Numele pachetului (de exemplu,
yourname/project) - Descriere
- Informații despre autor
- Stabilitate minimă
- Dependențe necesare
Aceasta generează un fișier composer.json — inima configurației dependențelor proiectului tău.
9b. Instalează un pachet
Pentru a adăuga o bibliotecă la proiectul tău, folosește comanda require:
composer require vendor/package-nameExemple din lumea reală:
# Install Guzzle HTTP client
composer require guzzlehttp/guzzle
# Install Carbon date library
composer require nesbot/carbon
# Install Monolog logging library
composer require monolog/monologComposer va rezolva dependențele, va descărca pachetele în directorul vendor/ și va actualiza composer.json și composer.lock.
9c. Instalează toate dependențele din composer.json
Când implementezi un proiect sau clonezi un depozit, instalează toate dependențele declarate cu:
composer installPentru mediile de producție, folosește steagul --no-dev pentru a omite pachetele doar pentru dezvoltare:
composer install --no-dev --optimize-autoloader9d. Actualizează dependențele
Pentru a actualiza toate pachetele la versiunile lor cele mai recente permise:
composer updatePentru a actualiza un pachet specific:
composer update vendor/package-name9e. Autoîncărcare
Composer generează automat un autoîncărcător. Include-l la începutul punctului tău de intrare PHP:
<?php
require 'vendor/autoload.php';Această singură linie îți oferă acces la toate pachetele instalate și la orice spații de nume personalizate pe care le definești în composer.json.
Depanarea problemelor comune
| Problemă | Cauză | Soluție |
|---|---|---|
composer: command not found | Binar nu este în $PATH | Adaugă directorul de instalare la $PATH și reîncarcă shell |
PHP Fatal error: Allowed memory size exhausted | Limita de memorie PHP prea scăzută | Rulează php -d memory_limit=-1 /usr/local/bin/composer install |
SSL certificate problem | Certificatele CA lipsă | Instalează pachetul ca-certificates sau actualizează configurația openssl a PHP |
The requested PHP extension ... is missing | Extensie necesară dezactivată | Activează extensia în php.ini sau contactează furnizorul tău |
Permisiune refuzată pe /usr/local/bin | Fără acces sudo | Instalează Composer local în ~/bin așa cum este descris în Pasul 7 |
Ține Composer actualizat
Composer include un mecanism de auto-actualizare încorporat. Rulează următoarea comandă periodic pentru a te asigura că ai cea mai recentă versiune:
composer self-updatePentru a reveni la versiunea anterioară dacă este necesar:
composer self-update --rollbackRămânerea actualizată asigură că beneficiezi de cele mai recente patch-uri de securitate, corecturi de erori și îmbunătățiri de performanță.
Alegerea mediului de găzduire potrivit pentru dezvoltarea PHP
Mediul de găzduire pe care îl alegi afectează semnificativ capacitatea ta de a folosi instrumente precum Composer eficient.
- Găzduire Web Partajată — Potrivită pentru proiecte PHP mai mici. Accesul SSH este disponibil, dar modificările la nivel de sistem sunt restricționate. Composer poate fi instalat local în directorul tău home.
