투잡뛰는 개발 노동자

[php]Configurar CodeIgniter 4 en Ubuntu

Creado: 2024-03-27

Creado: 2024-03-27 19:47

CodeIgniter 4.
En la empresa, surgió la oportunidad de llevar a cabo un nuevo proyecto. Después de mi incorporación, el sitio web existente utilizaba CodeIgniter 3, por lo que, con una mezcla de curiosidad y expectativas, decidimos utilizar CodeIgniter 4.

La primera tarea es la configuración del servidor de desarrollo. Este documento se creó para registrar los tropiezos (?) que encontré al instalar CodeIgniter 4 en el servidor de desarrollo.

[php]Configurar CodeIgniter 4 en Ubuntu

El sistema operativo del servidor de desarrollo se probó en la versión 20.04.2 de Ubuntu


Como Apache2 y PHP versión 7 ya estaban instalados, descargué los archivos del framework CodeIgniter 4 (en adelante, CI4).


[php]Configurar CodeIgniter 4 en Ubuntu


Accedo a la URL anterior y hago clic en 'CI4 Download' para descargar los archivos del framework. Parece que se requiere como mínimo la versión 7.3 de PHP.

[php]Configurar CodeIgniter 4 en Ubuntu


Después de descomprimir el archivo, puedo ver los archivos que se muestran en la imagen. La versión de CI que utilicé para la prueba fue la 4.1.3.

Ahora, subo los archivos del proyecto descargado a Apache2.


[php]Configurar CodeIgniter 4 en Ubuntu


Para fines de prueba, cambié el nombre del proyecto a 'ci4' y lo subí. Para verificar si funciona correctamente, accedo a localhost (o la dirección)/public/index.php.

[php]Configurar CodeIgniter 4 en Ubuntu

Tan pronto como accedo, me encuentro con una pantalla de error.

De hecho, ahí es donde comenzaron mis tropiezos. En mi caso, se trataba de errores que parecían estar relacionados con los permisos de las carpetas y la falta de instalación de las extensiones de PHP. Primero, cambié los permisos de la carpeta '/writable' dentro de los archivos del proyecto.


sudo chmod -R 777 writable


En segundo lugar, necesito instalar las extensiones de PHP necesarias. Las extensiones esenciales son 4: curl, intl, mbstring y xml. En los servidores que ya están en funcionamiento, es posible que ya estén instaladas, pero como yo estaba configurando el servidor por primera vez, tuve que instalarlas una por una.


sudo apt-get install php-curl
sudo apt-get install php-intl
sudo apt-get install php-mbstring
sudo apt-get install php-xml


Ejecuto cada uno de estos comandos para instalar las extensiones necesarias.

Por último, debo quitar los comentarios de las extensiones curl e intl en el archivo php.ini.


sudo nano /etc/php/7.4/apache2/php.ini


La ubicación del archivo php.ini puede variar según el entorno del servidor. Ejecuto el comando anterior para acceder al archivo php.ini en modo de edición.


;extension=bz2
extension=curl
;extension=ffi
;extension=ftp
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
extension=intl
;extension=imap
;extension=ldap
;extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql

Al desplazarme hacia abajo en el archivo php.ini, me encuentro con la sección anterior. Elimino el ';' que se encuentra al principio de las líneas de curl e intl, presiono Ctrl + x para guardar y salir.

Después de realizar todos los cambios de configuración, reinicio Apache.


sudo service apache2 restart


[php]Configurar CodeIgniter 4 en Ubuntu


Si vuelvo a acceder a la URL anterior, puedo ver la pantalla inicial de CI4 que se muestra correctamente.

En realidad, cuando lo escribo y lo organizo, no parece gran cosa, pero me llevó mucho tiempo debido a las búsquedas en Google y los problemas que encontré al configurar el servidor de desarrollo por primera vez.

Como me enfocaba principalmente en la gestión del servidor de producción (SM), no había tenido la oportunidad de configurar un servidor de desarrollo por mi cuenta. Sin embargo, al hacerlo, me di cuenta de que era una experiencia desafiante pero gratificante, ya que aprendí mucho.







Comentarios0