Algo de esto puede deberse al sistema operativo que está ejecutando su servidor. Recientemente hice una migración a un nuevo entorno de alojamiento con Ubuntu. Agregar este alias alias composer="/path/to/your/composer"a .bashrc o .bash_aliases no funcionó al principio por dos razones:
El servidor estaba ejecutando csh, no bash, de forma predeterminada. Para comprobar si esto es un problema en su caso, ejecute echo $0. Si lo que se devuelve es -csh, querrá cambiarlo a bash, ya que algunos procesos ejecutados por Composer fallarán al usar csh / tcsh .
Para cambiarlo, primero verifique si bash está disponible en su servidor ejecutando cat /etc/shells. Si, en la lista devuelta, ve bin/bash, puede cambiar el valor predeterminado a bash ejecutando chsh -s /bin/csh.
Ahora, en este punto, debería poder ejecutar Composer, pero normalmente, en Ubuntu, tendrá que cargar el script en cada sesión obteniendo sus scripts Bash ejecutando source ~/.bashrco source ~/.bash_profile. Esto se debe a que, en la mayoría de los casos, Ubuntu no cargará su script Bash, ya que se carga .profilecomo el script predeterminado.
Para cargar sus scripts Bash cuando abre una sesión, intente agregar esto a su .profile (esto es si su script Bash es .bashrc; modifíquelo en consecuencia si .bash_profile u otro):
if [ -n "$BASH_VERSION" ]; then
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
Para probar, cierre su sesión y vuelva a cargar. Si funciona correctamente, se está ejecutando composer -vo which composerdebería comportarse como se esperaba.
composer install.