Su molti hosting cPanel, il comando composer di sistema usa la PHP predefinita del server. Installando Composer in locale (nella tua home), puoi lanciarlo con la PHP del tuo dominio, evitando mismatch di versione ed estensioni.
Installazione di Composer (locale all’utente)
Questa modalità è permessa solo se si ha accesso SSH. Se il tuo piano lo prevede, puoi richiedere l’accesso al Accesso SSH.
Controlla il comando d’installazione e l’hash
Vai su https://getcomposer.org/download/ e prendi la riga aggiornata (versione e hash cambiano nel tempo).Installa nella home (
~):
cd ~
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
# Sostituisci l'hash qui sotto con quello attuale dalla pagina download!
php -r "if (hash_file('sha384', 'composer-setup.php') === 'ed0feb545ba87161262f2d45a633e34f591ebb3381f2e0063c345ebea4d228dd0043083717770234ec00c5a9f9593792') { echo 'Installer verified'.PHP_EOL; } else { echo 'Installer corrupt'.PHP_EOL; unlink('composer-setup.php'); exit(1); }"
php composer-setup.php
php -r "unlink('composer-setup.php');"Se tutto ok, avrai il file ~/composer.phar (non cancellarlo).
Usare Composer con la versione di PHP del dominio
Entra nella cartella del progetto (es. public_html):
cd ~/public_htmlLanciare composer
sp-php ~/composer.phar --version
sp-php ~/composer.phar install
sp-php ~/composer.phar updateQuesto forza Composer a girare con la PHP attiva sul dominio, quindi rispetta la versione impostata in cPanel (o via PHP Selector).
Comando corto (alias)
Per comodità puoi creare un alias “composer” che usa la PHP del dominio:
echo 'alias composer="sp-php ~/composer.phar"' >> ~/.bashrc
source ~/.bashrcOra ti basta:
cd ~/public_html
composer installAggiornare Composer
sp-php ~/composer.phar self-updateEsempi rapidi d’uso nel progetto
# Installare dipendenze
composer install
# Aggiornare dipendenze rispettando i vincoli
composer update
# Verificare la piattaforma PHP vista da Composer
composer diagnose
composer check-platform-reqs