Guía Completa: Instalar LAMPP con PostgreSQL y CodeIgniter 4 en Ubuntu 24.04 (EC2 AWS)
Guía Completa: Instalar LAMPP con PostgreSQL y CodeIgniter 4 en Ubuntu 24.04 (EC2 AWS)
Esta guía te muestra cómo dejar una instancia EC2 (Ubuntu 24.04) lista para usar CodeIgniter 4 con Apache, PostgreSQL y HTTPS.
✨ 1. Requisitos Previos
- Una instancia EC2 Ubuntu 24.04 corriendo
- Acceso SSH a la instancia (archivo .pem)
- Un dominio apuntando a la IP de tu instancia
- Puertos 22, 80 y 443 abiertos en el grupo de seguridad
⚙️ 2. Actualizar el sistema
sudo apt update && sudo apt upgrade -y
🔧 3. Instalar Apache, PHP y extensiones necesarias
sudo apt install apache2 php php-pgsql php-intl php-xml php-mbstring php-curl php-zip php-cli unzip git -y
sudo a2enmod rewrite
📃 4. Instalar PostgreSQL y configurar base de datos
sudo apt install postgresql postgresql-contrib -y
Crear base de datos y usuario:
sudo -u postgres psql
CREATE DATABASE facturacion;
CREATE USER ci4user WITH PASSWORD 'ci4password';
GRANT ALL PRIVILEGES ON DATABASE facturacion TO ci4user;
\c facturacion
ALTER SCHEMA public OWNER TO ci4user;
GRANT USAGE, CREATE ON SCHEMA public TO ci4user;
\q
📁 5. Instalar Composer y CodeIgniter 4
cd /var/www/html
sudo composer create-project codeigniter4/appstarter facturacion
sudo chown -R www-data:www-data facturacion
sudo chmod -R 775 facturacion/writable
🚪 6. Configurar Apache Virtual Host
sudo nano /etc/apache2/sites-available/tusitio.com.conf
<VirtualHost *:80>
ServerName tusitio.com
DocumentRoot /var/www/html/facturacion/public
<Directory /var/www/html/facturacion/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/facturacion_error.log
CustomLog ${APACHE_LOG_DIR}/facturacion_access.log combined
</VirtualHost>
sudo a2dissite 000-default.conf
sudo a2ensite tusitio.com.conf
sudo systemctl reload apache2
🔒 7. Instalar Certbot para HTTPS
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d tusitio.com --non-interactive --agree-tos -m admin@tusitio.com --redirect
🔢 8. Configurar CodeIgniter 4 con PostgreSQL
Edita el archivo .env
:
database.default.hostname = localhost
database.default.database = facturacion
database.default.username = ci4user
database.default.password = ci4password
database.default.DBDriver = Postgre
database.default.port = 5432
📆 9. Ejecutar migraciones de CodeIgniter
cd /var/www/html/facturacion
sudo php spark migrate
Si da error de permisos:
sudo chown -R www-data:www-data writable
sudo chmod -R 775 writable
🎉 Resultado Final
Ya puedes acceder a tu sitio en:
https://tusitio.com
🚀 Extras (opcional)
- Usa
php spark serve
para desarrollo local - Configura Git para control de versiones
- Usa
.htaccess
para seguridad y redirecciones
¡Listo! Tienes una pila LAPP (Linux, Apache, PostgreSQL, PHP) totalmente funcional con CodeIgniter 4.
Comentarios
Publicar un comentario