Instalación Crear Proyecto y servir CodeIgniter 4 en Windows, Linux o MacOs

Video thumbnail

CodeIgniter 4 es un framework moderno para PHP que se caracteríza por ser fácil de usar, una curva de aprendizaje mejor que la de otros frameworks como Laravel, pocos requerimientos, facil de configurar e instalar y por lo tanto, es un gran framework que podemos aprender para dar los primeros pasos con PHP.

Codeigniter es un framework ágil que se utiliza para el desarrollo de aplicaciones web; al seru n framework, proporciona una gran cantidad de características y funcionalidades para los desarrolladores siguiendo esquemas y patrones modernos; es un framework escalable gracias al que utiliza composer, podemos instalar fácilmente nuevas dependencias y mantener al dia el proyecto.

CodeIgniter 4 tiene ya muchos años en desarrollo y finalmente está disponible en una versión estable; CodeIgniter es el elegido por muchos (incluyéndome) por su sencillez y velocidad al momento de desarrollar nuestras aplicaciones.

CodeIgniter, como cualquier framework php, requiere de LAMP para poder funcionar; es decir Apache, MySQL (u otras base de datos soportadas) y PHP; aunque el mismo dispone de su propio servidor, por lo que puedes prescindir de Apache.

En definitiva, CodeIgniter 4 es el ideal para pequeños y medianos proyectos, veamos como instalar el mismo.

Vamos a aprender a cómo podemos instalar CodeIgniter 4, para ello contamos de dos maneras distintas; una completamente manual y otra vía composer; estas vienen siendo las dos únicas maneras que tenemos para trabajar con C4.

CodeIgniter 4 requiere de PHP 8.2 para poder funcionar

Lo que si vas a necesitar, seria PHP, que viene siendo nuestro lenguaje de programación y en donde se encuentra escrito este framework.

Ya PHP 7 lleva mucho tiempo entre nosotros y es lo normal que la 5.x vaya pasando a segundo plano y un framework moderno como lo es CodeIgniter 4 no puede ser la excepción y a diferencia de la versión 3, emplea una versión moderna.

Instalar CodeIgniter 4 de manera manual

Para esta opción, tenemos que ir al sitio oficial que sería https://codeigniter.com/

Y descargar el framework (ya lo puedes descargar directamente como opción por defecto desde la web oficial) que viene en un comprimido, luego lo descomprimimos, lo arrojamos dentro de nuestro servidor y buala, ya estamos listos para poder emplearlo.

Abre el archivo app/Config/App.php y configura tu base URL.

Si es necesario, configura tu base de datos en app/Config/Database.php

Para instalar CodeIgniter 4 de manera manual, simplemente tenemos que descargar el framework desde la página web principal y lo descomprimes:

Le das el nombre a la carpeta que quieres que tenga para tu proyecto y lo copias a tu servidor, que en mi caso estoy en ambiente windows y empleando Laragon con CodeIgniter 4:

Descargar e instalar C4

Lo copias a tu servidor y listo, esto seria todo, es básicamente la misma instalación que su predecesor, la versión 3 de CodeIgniter:

CodeIgniter 4 y Laragon

Esta opción es ideal para hacer algunas pruebas con el framework; pero al final, si nos acostumbramos a trabajar con Composer, podemos tanto crear el proyecto como actualizarlo y realizar las diversas tareas que nos permite Composer; con Composer, tenemos una forma más directa y con menos pasos para hacer las tareas señaladas anteriormente.

Como puedes ver en la imagen anterior, ya en este proyecto tenemos habilitado Composer para poder trabajar; sin embargo, por defecto el proyecto no trabaja con Composer...

Se que esto puede parecer confuso, pero, cuando comparas con el proyecto que crearemos en el siguiente apartado con Composer verás que falta una carpeta... para esta opción, la de instalación manual, veras que existe una carpeta llamada system que es donde se encuentra el core de nuestro framework; aunque ejecutemos comandos de Composer como:

$ composer update

Y se genere la carpeta de vendor, con todas las dependencias, nuestro proyecto aun apuntará a la carpeta system; por lo tanto, tendríamos que hacer adaptaciones extras a nuestro proyecto para que funcione mediante Composer y con esto, todas las ventajas que nos ofrece este manejador; pero no tendría sentido alguno, ya que, si queremos emplear Composer, lo mejor que podemos hacer es crear el proyecto desde el inicio con Composer.

En conclusión, esta opción es recomendada para hacer algunas pruebas con el framework y nada más, ya que no tenemos una forma directa de trabajar con Composer y lo que esto implica, imposibilidad -o en el mejor de los casos- complicaciones para actualizar e instalar dependencias PHP. Ya que, si queremos extender el framework con librerías para PHP o actualizar el framework, nos vemos enormemente limitados y ambas limitaciones las podemos solventar fácilmente si empleamos Composer.

Instalar CodeIgniter 4 por composer

Video thumbnail

Para instalar C4 vía composer podemos emplear el siguiente comando que recuerda lo puedes comprobar en la documentación oficial en caso de que el mismo cambie o lo actualicen en algún punto:

$ composer create-project codeigniter4/appstarter project-root

Dónde project-root es el nombre del proyecto:

$ composer create-project codeigniter4/appstarter peliculas

La mejor manera para instalar CodeIgniter 4: manual va composer

Al día de hoy, la manera más recomendada para trabajar con CodeIgniter 4 sería por composer, y la razón es que de esta manera puedes actualizar el framework fácilmente e instalar dependencias, es decir, otros paquetes fácilmente via composer.

Composer es un sistema de gestión de paquetes para el lenguaje de programación PHP que permite poder instalar y en general los paquetes o bibliotecas también conocidas como dependencias de manera sencilla y eficiente mediante comandos; podemos agregar dependencias a nuestro proyecto como paquetes para manear excel, login social, entre otros; estos paquetes pueden ser fácilmente agregados o removidos mediante comandos.

Aparte de poder gestionar las dependencias, tenemos un agregado oculto y es  que permite mantener actualizadas estas dependencias con facilidad; ya que, a la final un proyecto que use algún framework como CodeIgniter a la final consiste en varias dependencias que pueden ser gestionadas mediante Composer como mencionamos antes. 

Ambiente recomendado para desarrollar tus proyectos en CodeIgniter 4

En esta sección vamos a explicar cómo podemos instalar C4 en nuestro equipo, dependiendo del SO que estés empleando.

En Windows y MacOS

Video thumbnail

Si estás empleando Windows o MacOS, te recomiendo que emplees Laravel Herd, que es el ambiente para Laravel pero que al ser PHP, puedes usarlo con CodeIgniter perfectamente, que es el ambiente que empleamos cuando desarrollamos las aplicaciones en Laravel; 

En Windows, también puedes emplear tu Wampp o cualquier variante como Xampp. Realizar la instalación de composer por tu partea y listo.

Otra diferencia es que tendrías que crear tu host virtual si NO empleas Laravel Herd para trabajar con C4 en caso de que quieras acceder a tu proyecto mediante una URL limpia.

MacOS

Otra forma es hacerlo de manera manual:

En Mac, también existen softwares "next, next next..." como Xampp los cuales te pueden servir perfectamente para seguir este libro, pero, si quieres tener algo un poco más modular, puedes emplear Homebrew para preparar tu entorno:

https://brew.sh/index_es

Homebrew no es más que un gestor de paquetes, en pocas palabras, un programa que nos permite instalar otros programas como PHP, MySQL, etc; en mi blog y canal de YouTube cuento con unos recursos que pueden servirte para instalar estas herramientas y con esto, poder instalar tu PHP y MySQL; ya que, Apache viene instalado por defecto.

Para instalar PHP:

https://formulae.brew.sh/formula/php

Para instalar MySQL:

https://formulae.brew.sh/formula/mysql

Linux

Si estás empleando Linux, no puedes emplear Laravel Herd, ya que este software solamente está disponible para Sistemas Operativos Windows; si que tendrías que realizar la instalación manual de tu LAMPP tal cual explicamos en:

Finalmente, para acceder al proyecto en C4, puedes hacerlo perfectamente desde localhost:

O si empleas un virtual host, por ejemplo:

<VirtualHost *:80>
    # Define la ruta base para tu sitio web
    DocumentRoot "C:/server/www/democodeig4/public/"

    # El nombre principal del dominio
    ServerName democodeig4.test

    # Nombres de dominio alternativos (opcional, ya lo tenías)
    ServerAlias *.democodeig4.test

    # Ruta para el archivo de registro de errores (Recomendado)
    ErrorLog "C:/server/www/democodeig4/logs/error.log"

    # Ruta para el archivo de registro de acceso (Recomendado)
    CustomLog "C:/server/www/democodeig4/logs/access.log" combined

    # Configuración de directorio específico
    <Directory "C:/server/www/democodeig4/public/">
        # Permite la sobrescritura de configuraciones (ej: .htaccess)
        AllowOverride All

        # Habilita el módulo de reescritura, incluye archivos y enlaces simbólicos (Opcional, pero común)
        Options +Indexes +FollowSymLinks +MultiViews 
        
        # Permite el acceso a todos los usuarios
        Require all granted
    </Directory>
</VirtualHost>

O también puedes emplear el comando de serve de spark:

$ php spark serve

Y si vas a tu navegador, el cualquiera de los casos anteriores verás algo como lo siguiente:

Ejecutar C4 en el navegador

Y esto sería todo, ya con esto tenemos listo nuestro proyecto para poder empezar a desarrollar nuestra aplicaciones en este sencillo pero potente framework.

Base de Datos MySQL, PostgreSQL en MacOS y Windows con DBngin

Video thumbnail

Aquí también tienes que crear tu base de datos en Mac tienes 1000 formas de hacerlo bueno en Windows tiene 1 forma de hacerlo en ma estás un poquito más limitado y la que yo te recomiendo es esta llamada de DBngin que es la que yo estoy empleando la cual te permite está para Mac y para Windows la cual te permite crear aquí tus sistemas para tu base de datos:

https://dbngin.com/

Siguiente paso, tu Primer Hola Mundo en CodeIgniter 4.

Acepto recibir anuncios de interes sobre este Blog.

Vamos a aprender a cómo podemos instalar CodeIgniter 4, para ello contamos de dos maneras distintas; una completamente manual y otra vía composer; estas vienen siendo las dos únicas maneras que tenemos para trabajar con C4.

| 👤 Andrés Cruz

🇺🇸 In english