Desarrollo y bases de datos

Instalar dependencias PHP con Composer en el hosting

Revisado el 4 min de lectura composer dependencias

Composer instala las bibliotecas PHP que necesita un proyecto a partir de composer.json. Cuando existe composer.lock, puede reproducir las versiones que has probado. Está disponible desde SSH y la terminal de cPanel.

Comprobar el entorno

Abre la terminal y consulta:

php -v
composer --version
php --ini

Estas órdenes muestran el entorno de línea de comandos. Puede diferir del PHP que sirve la web si un dominio fija otra versión mediante .htaccess. Antes de instalar, comprueba los requisitos del proyecto y las extensiones del intérprete que usará Composer.

Si composer no aparece, comprueba command -v composer y consulta con soporte la ruta disponible en tu cuenta. No necesitas privilegios de administrador para gestionar las dependencias del proyecto.

Instalar las versiones probadas

Trabaja en la carpeta que contiene composer.json y composer.lock, preferiblemente en una nueva release o un entorno de pruebas:

cd /home/usuario/apps/mi-proyecto &&
composer install --no-dev --prefer-dist --no-interaction --optimize-autoloader &&
composer check-platform-reqs --no-dev

Sustituye la ruta por la de tu proyecto. El ejemplo omite las dependencias de desarrollo para una instalación de producción; tu proceso de pruebas puede necesitarlas. Si falta el archivo de bloqueo, prepara y prueba uno en desarrollo antes de desplegar.

composer update resuelve nuevas versiones y modifica el bloqueo. Úsalo dentro del proceso de actualización en desarrollo, revisa el cambio y prueba la aplicación antes de publicarlo. Para instalar una release ya probada, utiliza install. Consulta la distinción entre install y update.

Composer puede ejecutar scripts y plugins del proyecto durante la instalación. Utiliza código de confianza y revisa qué operaciones realiza; instalar dependencias no es necesariamente una operación sin efectos sobre la aplicación.

Resolver una extensión ausente

Un mensaje como este indica que el PHP de Composer no tiene una extensión requerida:

requires ext-zip * -> the requested PHP extension zip is missing from your system

Comprueba la versión con php -v y sus módulos con php -m. Activa zip para esa misma versión en el selector de módulos PHP, vuelve a comprobarla y repite la instalación.

Si necesitas ejecutar con otro intérprete, utiliza su ruta absoluta junto a una instalación PHP de Composer cuya ruta hayas comprobado. Cambiar PHP en un .htaccess no cambia el intérprete de ese comando.

No soluciones un requisito incumplido con --ignore-platform-reqs: la instalación podría terminar y la aplicación fallar al ejecutarse. Si falta una biblioteca del sistema o la extensión no está disponible, consulta la compatibilidad con soporte.

Comprobar el resultado

Revisa que Composer termine sin errores, que vendor/autoload.php exista y que check-platform-reqs valide el entorno real. Después prueba la web y sus tareas programadas. Esta comprobación no sustituye a las pruebas funcionales ni verifica el PHP web si es distinto del de la terminal.

Ante un error de memoria o espacio, revisa los recursos del plan y el tamaño de las dependencias. Puedes preparar un artefacto en un entorno compatible, pero debes verificar sus requisitos en el hosting antes de publicarlo.

También te puede ayudar

¿Algo no cuadra o ha cambiado? Cuéntanoslo y lo revisamos.