Come risolvere l'errore "/Usr/Bin/Env: Php: No Such File Or Directory" quando si usa Composer?

Pubblicato 17 ottobre 2024

Problema: Errore di Composer con la directory PHP

L'errore "/usr/bin/env: php: No such file or directory" si verifica quando si utilizza Composer, uno strumento di gestione delle dipendenze per PHP. Questo errore indica che PHP non è installato sul sistema o non è configurato nel PATH di sistema.

Risoluzione del Problema di Installazione di Composer

Verifica dell'installazione e della versione di PHP

Per verificare se PHP è installato sul tuo sistema, apri un terminale e digita:

php -v

Questo comando mostra la versione di PHP se è installato. Se vedi un messaggio di errore, PHP potrebbe non essere installato o non essere nel PATH di sistema.

Per CentOS 7 con PHP 7.1, puoi anche provare:

php71 -v

Se questo comando funziona, conferma che PHP 7.1 è installato sul tuo sistema.

Suggerimento: Controlla i moduli PHP

Per verificare quali moduli PHP sono installati, usa il comando:

php -m

Questo può aiutare a identificare se i moduli richiesti per Composer sono presenti.

Verifica dell'installazione di Composer

Per confermare se Composer è installato correttamente, esegui:

composer --version

Questo comando dovrebbe mostrare la versione di Composer. Se ottieni un errore "command not found", Composer potrebbe non essere installato o non essere nel PATH di sistema.

I problemi comuni di installazione di Composer includono:

  • Directory di installazione errata: Assicurati che Composer sia installato in una directory inclusa nel PATH di sistema.

  • Permessi dei file errati: Controlla se il file di Composer ha i corretti permessi di esecuzione.

  • PHP non nel PATH: Composer richiede PHP per funzionare. Se PHP non è nel PATH di sistema, Composer non riuscirà a eseguirsi.

  • Versione di PHP incompatibile: Assicurati che la tua versione di PHP soddisfi i requisiti di Composer.

Per risolvere questi problemi, potrebbe essere necessario reinstallare Composer o modificare le impostazioni del PATH di sistema.

Correzione del Problema di Percorso PHP per Composer

Creazione di un collegamento simbolico a PHP

Un collegamento simbolico, o symlink, è un file che punta a un altro file o directory. Funziona come una scorciatoia, permettendoti di accedere al file o alla directory di destinazione da più posizioni senza fare copie.

Per creare un collegamento simbolico per PHP, usa questo comando:

sudo ln -s /usr/bin/php71 /usr/bin/php

Questo comando crea un symlink chiamato "php" nella directory "/usr/bin", che punta all'eseguibile "php71". Questo aiuta il sistema a trovare PHP quando si esegue Composer.

Suggerimento: Verifica il Symlink

Dopo aver creato il symlink, verifica che funzioni correttamente eseguendo:

ls -l /usr/bin/php

Questo dovrebbe mostrarti i dettagli del symlink, confermando che punta alla versione corretta di PHP.

Aggiornamento del PATH di sistema per PHP

Il PATH di sistema è un elenco di directory in cui il tuo sistema operativo cerca i file eseguibili. Per modificare il PATH di sistema:

  1. Apri il file ".bash_profile" nella tua directory home:
nano ~/.bash_profile
  1. Aggiungi questa riga alla fine del file:
export PATH=$PATH:/usr/bin
  1. Salva il file ed esci dall'editor.

  2. Applica le modifiche:

source ~/.bash_profile

Per aggiungere PHP al PATH:

  1. Trova la directory di installazione di PHP. Per PHP 7.1 su CentOS, di solito è "/usr/bin/php71".

  2. Apri di nuovo il file ".bash_profile":

nano ~/.bash_profile
  1. Aggiungi la directory di PHP al tuo PATH:
export PATH=$PATH:/usr/bin/php71
  1. Salva il file e applica le modifiche:
source ~/.bash_profile

Dopo aver apportato queste modifiche, Composer dovrebbe essere in grado di trovare e utilizzare PHP correttamente.