A más de un programador de Laravel le ha pasado esto: ha terminado el proyecto, pasado las pruebas y está listo para enviarlo a producción pero pasa algo: la carpeta vendor tiene un tamaño realmente grande.
Esto es porque la carpeta vendor tiene todos los paquetes que necesita el framework, pero hay unos de ellos que solamente son usados en modo desarrollo y que no son necesarios en producción.
Por eso es que hoy veremos cómo eliminar los paquetes innecesarios de vendor, o mejor dicho, cómo instalar únicamente los necesarios.
Si programas en Laravel debes usar por fuerza Composer. En caso de que no lo tengas instalado mira aquí cómo hacerlo, por otro lado, te invito a que leas este post en donde explico las ventajas de Composer.
El truco es simple. Cuando llevas un control de versiones no guardas la carpeta vendor, esa carpeta se crea cuando ejecutas composer install
como vimos en Qué hacer después de clonar un proyecto de Laravel.
En fin, en el momento de instalar las dependencias pasa la opción de --no-dev
así:
composer install --no-dev
De esta manera no se van a instalar las dependencias de desarrollo. Gracias a ello tu carpeta de vendor tendrá solamente lo necesario para que tu app funcione, y como estará en producción no habrá problemas.
Esto es totalmente y me ha pasado miles de veces: no tener acceso a composer en el servidor de producción.
Seguramente la opción que tienes es que debes subir los archivos por algo como FTP; muy bien, pues antes de subir el proyecto elimina la carpeta vendor.
Después de eso ejecuta en tu PC local:
composer install --no-dev
Espera a que se instalen los paquetes y súbelos. Después de ello, si hace falta, instala todas las dependencias normalmente.
En resumen: borra la carpeta, instala dependencias sin tomar en cuenta las de desarrollo, sube esa carpeta al servidor y listo.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.
Ver comentarios
muchas gracias me sirvio, esos benditos archivos superan los inodos permitidos de muchos hosting gratuitos
Buenas tardes Gabriel. Estoy intentando por primera vez subir mi proyecto laravel a un servidor gratuito y tengo el problema de la cantidad de inodes.
Lo has podido resolver de esa manera? Borro la carpeta vendor, subo al servidor y debería funcionar?
Gracias!
No lo había visto de ese modo (mi problema era que el ancho de banda de mi ISP es realmente limitado y tenía que subir la menor cantidad de archivos posible) pero tienes razón.
Saludos :)