Introducción
El servidor HTTP Apache es el servidor web más utilizado del mundo. Proporciona muchas funciones potentes, incluidos módulos cargables dinámicamente.
En este tutorial explicaremos cómo instalar un servidor web Apache en un VPS con Ubuntu 18.04 LTS.
Instalar Apache
Puede instalar Apache usando el repositorio oficial de Ubuntu con apt.
Actualice la lista de paquetes:
sudo apt update
Instale Apache:
sudo apt install apache2
Si usa Ubuntu Firewall (Ufw), debe habilitar Apache:
sudo ufw allow 'Apache Full'
Apache debería estar en funcionamiento. Para comprobar su estado:
sudo systemctl status apache2
En este punto, el servidor está listo con las configuraciones predeterminadas.
Simplemente conéctese a su dirección IP pública o localhost:
http://vostro_dominio_o_ip
http://localhost
Configurar un host virtual
Cuando se utiliza el servidor web Apache, los hosts virtuales se pueden utilizar para alojar varios dominios y luego varios sitios web en un solo servidor. Configuraremos un dominio llamado example.com, pero debería utilizar un dominio existente.
Apache en Ubuntu 18.04 tiene un bloque de servidor habilitado por defecto que está configurado para servir documentos desde el directorio /var /www /html que funciona correctamente para un solo sitio. Si aloja varios sitios, en lugar de modificar /var /www /html, cree una estructura de directorio dentro de /var /www dejando /var /www /html como el directorio predeterminado para servir si la solicitud de un cliente no coincide con ningún otro sitio configurado como anfitrión virtual.
Cree el directorio para example.com, usando la marca -p para crear todos los directorios necesarios:
sudo mkdir -p /var/www/esempio.com/html
Asigne al usuario actual como propietario del nuevo directorio:
sudo chown -R $USER:$USER /var/www/esempio.com/html
Asegúrese de que los permisos sean correctos:
sudo chmod -R 755 /var/www/esempio.com
Cree el archivo index.html para nuestro sitio:
nano /var/www/esempio.com/html/index.html
Pegue el siguiente texto en el archivo index.html:
<html>
<head>
<title>Ciao da esempio.com!</title>
</head>
<body>
<h1>Esempio.com</h1>
</body>
</html>
Guarde y cierre el archivo
Cree un nuevo archivo de configuración para el host virtual example.com, sin cambiar el predeterminado:
sudo nano /etc/apache2/sites-available/esempio.com.conf
Pegue las siguientes líneas de código, asegurándose de cambiar los valores de su dominio, en este caso example.com:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName esempio.com
ServerAlias www.esempio.com
DocumentRoot /var/www/esempio.com/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Guarde y cierre el archivo.
Habilite el nuevo sitio:
sudo a2ensite esempio.com.conf
Deshabilite el archivo de configuración predeterminado:
sudo a2dissite 000-default.conf
Verifique si los datos ingresados en los archivos son correctos:
sudo apache2ctl configtest
Debería ver una respuesta similar a esta:
Syntax OK
Reinicie Apache:
sudo systemctl restart apache2
Ahora puede conectarse al host virtual que acaba de crear conectándose a su dominio:
http://esempio.com
Agregar otro host virtual (opcional)
Si desea agregar otro sitio con un dominio diferente, cree otro host virtual, simplemente repita los pasos ya explicados anteriormente:
sudo mkdir -p /var/www/esempio2.com/html
sudo chown -R $USER:$USER /var/www/esempio2.com/html
sudo chmod -R 755 /var/www/esempio2.com
nano /var/www/esempio2.com/html/index.html
Pegue las siguientes líneas de código:
<html>
<head>
<title>Ciao da esempio2.com!</title>
</head>
<body>
<h1>Esempio2.com</h1>
</body>
</html>
sudo nano /etc/apache2/sites-available/esempio2.com.conf
Pegue las siguientes líneas de código teniendo cuidado de cambiar los valores con su segundo dominio:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName esempio2.com
ServerAlias www.esempio2.com
DocumentRoot /var/www/esempio2.com/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
sudo a2ensite esempio2.com.conf
sudo apache2ctl configtest
sudo systemctl restart apache2
Su segundo dominio está activo.
Ahora puede conectarse al host virtual que acaba de crear conectándose a su dominio:
http://esempio2.com
Comandos útiles para administrar Apache
Para detener los procesos de Apache y luego desconectar el servidor web:
sudo systemctl stop apache2
Para iniciar Apache:
sudo systemctl start apache2
Para reiniciar Apache
sudo systemctl restart apache2
Para deshabilitar el inicio automático de Apache después del reinicio del servidor (VPS):
sudo systemctl disable apache2
Para habilitar el inicio automático de Apache después del reinicio del servidor (VPS):
sudo systemctl enable apache2
Conclusión
La instalación y configuración de Apache mediante hosts virtuales en Ubuntu 18.04 LTS ha finalizado.