Ubuntu

Cómo montar un servidor web con Apache en Ubuntu

Montar tu propio servidor web es el mejor ejercicio práctico para aprender Linux, y con Apache en Ubuntu se hace en un cuarto de hora. Al final de esta guía tendrás un sitio sirviendo páginas con su dominio y su certificado SSL gratuito.

1. Instalar Apache

sudo apt update
sudo apt install apache2 -y
systemctl status apache2   # debe decir active (running)

Abre http://IP-de-tu-servidor en el navegador: si ves la página «Apache2 Ubuntu Default Page», ya está sirviendo.

2. Abrir el firewall

sudo ufw allow 'Apache Full'   # puertos 80 y 443
sudo ufw enable
sudo ufw status

3. Crear tu primer sitio con VirtualHost

Los VirtualHosts permiten alojar varios sitios en el mismo servidor. Crea la carpeta del sitio y una página de prueba:

sudo mkdir -p /var/www/misitio.com/html
echo '<h1>Funciona</h1>' | sudo tee /var/www/misitio.com/html/index.html
sudo chown -R www-data:www-data /var/www/misitio.com

Ahora la configuración del VirtualHost:

sudo nano /etc/apache2/sites-available/misitio.com.conf
<VirtualHost *:80>
    ServerName misitio.com
    ServerAlias www.misitio.com
    DocumentRoot /var/www/misitio.com/html
    ErrorLog ${APACHE_LOG_DIR}/misitio-error.log
    CustomLog ${APACHE_LOG_DIR}/misitio-access.log combined
</VirtualHost>
sudo a2ensite misitio.com.conf
sudo a2dissite 000-default.conf
sudo apache2ctl configtest    # Syntax OK = todo bien
sudo systemctl reload apache2

4. SSL gratis con Let’s Encrypt

Con el dominio ya apuntando a la IP del servidor (registro A en tu DNS):

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d misitio.com -d www.misitio.com

Certbot configura HTTPS, redirige el tráfico HTTP y programa la renovación automática del certificado. Compruébala con sudo certbot renew --dry-run.

5. Dónde mirar cuando algo falla

  • sudo tail -f /var/log/apache2/error.log — el log de errores en vivo.
  • sudo apache2ctl configtest — detecta errores de sintaxis antes de recargar.
  • ¿Página en blanco tras un cambio? Revisa permisos: el usuario www-data debe poder leer los archivos.

Conclusión

Con Apache instalado, el firewall abierto, un VirtualHost limpio y SSL automático, tienes una base de hosting profesional. El siguiente paso natural es instalar PHP y una base de datos — pero eso es otra guía.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *