Introducción
CodeIgniter es un framework para el desarrollo de aplicaciones web en lenguaje PHP, liberado bajo la licencia Open Source, el cual está basado en el paradigma MVC (Model-View-Controller) [2][3]. Permite separar el núcleo de la aplicación y el código de procesamiento de la información [2]. CodeIgniter es conocido por su facilidad de uso y su excelente rendimiento [1]. Además, CodeIgniter incluye una fuerte protección contra ataques CSRF y XSS.
Instalar Apache y PHP
Primero, deberá instalar el servidor web Apache y PHP. Normalmente, esto se puede hacer ejecutando los siguientes comandos:
sudo apt update
sudo apt install apache2 php libapache2-mod-php
Crear la aplicación de inicio de CodeIgniter
Después de eso, puede descargar la última versión de los archivos del marco de la aplicación de inicio de CodeIgniter desde el sitio web oficial ( https://codeigniter.com/ ). Una vez descargado, extraiga el contenido del archivo en el directorio de su proyecto (p. ej.: /var/www/ci4-app).
Alternativamente, puede simplemente compilar la aplicación CodeIgniter usando la herramienta Composer:
cd /var/www
composer create-project codeigniter4/appstarter pci4-app
El comando anterior creará todos los archivos para la aplicación CI en el directorio "ci4-app".
Configurar apache
Ahora deberá configurar el servidor web Apache para que apunte a su instalación de CodeIgniter. Para hacer esto, deberá crear un nuevo archivo de host virtual en el directorio /etc/apache2/sites-disponible/. Puede hacer esto ejecutando el siguiente comando:
sudo vim /etc/apache2/sites-available/codeigniter.conf
En este archivo, deberá agregar la siguiente configuración:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/ci4-app/public
ServerName example.local
ServerAlias www.example.local
<Directory /var/www/ci4-app>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Guarde el archivo de configuración de Apache VirtualHost. Luego use el comando a2ensite para habilitar el CodeIgniter VirtualHost recién creado. Además, reinicie el servicio Apache para aplicar los cambios.
sudo a2ensite codeigniter
También deberá habilitar el módulo mod_rewrite ejecutando el siguiente comando:
sudo a2enmod rewrite
sudo systemctl restart apache2
Configurar archivos dotenv
A continuación, deberá configurar CodeIgniter. Para hacer esto, deberá abrir el archivo .env y configurar la URL base para que coincida con la configuración de su host virtual. Para este tutorial, estoy usando el nombre de dominio www.example.local para la aplicación. Puede elegir localhost o cualquier nombre de dominio válido de su elección.
CodeIgniter4 usa el archivo.env para administrar fácilmente el entorno de la aplicación. Puede crear una copia del archivo de plantilla "env" con el nombre ".env" en el directorio raíz de su proyecto.
cp env.env
A continuación, edite el archivo.env en un editor de texto:
sudo nano.env
En el archivo de entorno, elimine el comentario de las líneas eliminando el símbolo "#" inicial. Luego ajusta los valores:
- CI_ENVIRONMENT: establezca este valor en función de su distribución. Cambie este valor a "producción" o "desarrollo" según su implementación:
CI_ENVIRONMENT = development
- app.baseURL: establezca la URL base para que coincida con la configuración de su host virtual:
app.baseURL = 'http://www.example.local'
- BASE DE DATOS: Si planea utilizar una base de datos con la aplicación CI, actualice también los siguientes valores en la sección BASE DE DATOS:
database.default.hostname = localhost
database.default.database = ci4
database.default.username = root
database.default.password = root
database.default.DBDriver = MySQLi
database.default.DBPrefix =
database.default.port = 3306
Guarde los cambios y cierre el archivo.
Establecer permisos de archivo
Finalmente, deberá configurar los permisos apropiados en los archivos y carpetas de CodeIgniter. El usuario del servidor web, normalmente www-data, necesitará permisos de lectura y ejecución en toda la instalación de CodeIgniter. Puede hacer esto ejecutando el siguiente comando:
sudo chown -R www-data:www-data /var/www/ci4-app
Iniciar sesión en la aplicación
Reinicie el servidor web Apache ejecutando el siguiente comando:
sudo service apache2 restart
Para las máquinas de host local, también deberá agregar el nombre de su servidor al archivo de hosts:
sudo nano /etc/hosts
Agregue la siguiente línea:
127.0.0.1 example.local www.example.local
La instalación de CodeIgniter ahora está completa. Se puede acceder a la aplicación accediendo a http://example.local en un navegador web. Debería aparecer la página de bienvenida predeterminada.
Conclusión
Vale la pena señalar que esta guía es una configuración básica para CodeIgniter en Ubuntu, y hay muchas otras configuraciones que puede hacer para ajustar su configuración, como configurar HTTPS, crear un entorno de desarrollo y mucho más. Además, esta guía se basa en la última versión de CodeIgniter y Ubuntu y el proceso puede cambiar según la versión de CodeIgniter y Ubuntu que esté utilizando. Por lo tanto, siempre es una buena idea consultar la documentación de CodeIgniter y la documentación de Ubuntu para obtener la información más precisa y actualizada.