Composer es una herramienta útil para desarrolladores de PHP al gestionar paquetes y dependencias. Es principalmente un manejador de dependencias en PHP, capaz de instalar las librerías que requiere tu proyecto con las versiones necesarias, e incluso las dependencias de las librerías. Al uso es algo similar a lo que hace npm en Node o Bundler en Ruby.
La instalación siempre es local para cualquier proyecto. Las librerías se instalan en un directorio por defecto (por lo general /vendor).
¿Cómo instalo Composer en mi hosting?
Antes de comenzar, debes asegurarte de tener acceso SSH a tu hosting.
Cualquier usuario con acceso SSH puede instalar Composer de forma local. No obstante, su uso en nuestros servidores tiene una pequeña particularidad. Los pasos para instalar Composer son los siguientes:
- Ejecutamos el siguiente comando:
curl -sS https://getcomposer.org/installer | php
- Se nos mostrará lo siguiente en la consola (en este ejemplo lo hemos instalado en www):
usuario@vl12345:~/www$ curl -sS https://getcomposer.org/installer | php All settings correct for using Composer Downloading... Composer (version 1.9.1) successfully installed to: /home/composerusuario-formacion/www/composer.phar Use it: php composer.phar
- Para usarlo como se indica en la consola bastaría con ejecutar lo siguiente:
php composer.phar
- Sin embargo, al ejecutarlo veremos unos avisos de PHP indicando lo siguiente:
PHP Warning: putenv() has been disabled for security reasons in phar:///home/composerusuario/www/composer.phar/vendor/composer/xdebug-handler/src/Process.php on line 149 PHP Warning: putenv() has been disabled for security reasons in phar:///home/composerusuario/www/composer.phar/bin/composer on line 57 Warning: putenv() has been disabled for security reasons in phar:///home/composerusuario/www/composer.phar/bin/composer on line 57
- Por lo tanto, la manera de ejecutarlo en consola en nuestros servidores es:
php -d disable_functions= composer.phar
Una recomendación para no tener que escribir esto cada vez que queremos ejecutar Composer sería crear un alias para nuestro usuario de SSH. Para ello, creamos simplemente un fichero de texto con el nombre .bashrc en la raíz del hosting con el siguiente contenido (Este fichero lo podrás crear mismamente con Bloc de notas en tu equipo y subirlo por FTP a tu hosting):
alias composer="~/.bin/php -d disable_functions= ~/www/composer.phar"
Asegúrate adicionalmente de que existe un fichero .profile en la raíz del hosting con el siguiente contenido para que el alias funcione correctamente:
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
De este modo, usando el comando composer podremos ejecutar cualquier otro comando. Por ejemplo:
composerusuario@vl12345:~/www$ composer -V Composer version 1.9.1 2019-11-01 17:20:17
En la web oficial de Composer puedes consultar su manual completo de uso.
¿Cómo desinstalo Composer?
Para desinstalar Composer, solo tendríamos que seguir estos dos pasos:
- Eliminar el fichero composer.phar
- Eliminar la carpeta cache llamada .composer
Con estos dos sencillos pasos tendremos el Composer desinstalado.