Androide

Cómo configurar hosts virtuales apache en ubuntu 18.04

Como configurar Virtual Hosts con apache2 en Ubuntu 18.04

Como configurar Virtual Hosts con apache2 en Ubuntu 18.04

Tabla de contenido:

Anonim

En este tutorial, proporcionaremos instrucciones paso a paso sobre cómo configurar Apache Virtual Hosts en Ubuntu 18.04.

Apache Virtual Hosts le permite ejecutar más de un sitio web en una sola máquina. Con Virtual Hosts, puede especificar la raíz del documento del sitio (el directorio que contiene los archivos del sitio web), crear una política de seguridad separada para cada sitio, usar diferentes certificados SSL y mucho más.

Aunque este tutorial está escrito para Ubuntu 18.04 Bionic Beaver, se pueden usar los mismos pasos para Ubuntu 16.04 Xenial Xerus.

Prerrequisitos

Asegúrese de cumplir con los siguientes requisitos previos antes de continuar con este tutorial:

  • Tiene un nombre de dominio que apunta a la IP de su servidor público. Usaremos example.com . Tiene instalado Apache siguiendo estas instrucciones. Ha iniciado sesión como usuario con privilegios de sudo.

Crear la estructura del directorio

La raíz del documento es el directorio donde se almacenan y sirven los archivos del sitio web para un nombre de dominio en respuesta a las solicitudes. Puede establecer la raíz del documento en la ubicación que desee, en esta guía usaremos la siguiente estructura de directorios:

/var/www/ ├── domain1.com │ └── public_html ├── domain2.com │ └── public_html ├── domain3.com │ └── public_html

Básicamente, crearemos un directorio separado para cada dominio que queramos alojar en nuestro servidor dentro del directorio /var/www . Dentro de cada uno de estos directorios, crearemos un directorio public_html que almacenará los archivos del sitio web del dominio.

Comience creando el directorio raíz para el dominio example.com :

sudo mkdir -p /var/www/example.com/public_html

Para fines de prueba, también cree un archivo index.html dentro del directorio raíz del documento de dominio.

Abra su editor y cree el archivo de demostración:

/var/www/example.com/public_html/index.html

<code> Welcome to example.com Success! example.com home page! </code>

Welcome to example.com Success! example.com home page!

En esta guía, estamos ejecutando los comandos como un usuario sudo y los archivos y directorios recién creados son propiedad del usuario raíz.

Para evitar problemas de permisos, podemos cambiar la propiedad del directorio raíz del documento de dominio al usuario de apache ( www-data ):

sudo chown -R www-data: /var/www/example.com

Crear un host virtual

De manera predeterminada en los sistemas Ubuntu, los archivos de configuración de los Hosts virtuales Apache se almacenan en el directorio /etc/apache2/sites-available y se pueden habilitar creando enlaces simbólicos al directorio /etc/apache2/sites-enabled .

Abra el editor de su elección y cree el siguiente archivo básico de configuración de Virtual Host:

/etc/apache2/sites-available/example.com.conf

ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/example.com/public_html Options -Indexes +FollowSymLinks AllowOverride All ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined

  • ServerName : el dominio que debe coincidir con esta configuración de host virtual. Este debería ser tu nombre de dominio. ServerAlias : todos los demás dominios que también deberían coincidir con este host virtual, como el subdominio www . DocumentRoot : el directorio desde el cual Apache servirá los archivos de dominio. Options : esta directiva controla qué funciones del servidor están disponibles en un directorio específico.
    • -Indexes : evita listados de directorios. FollowSymLinks : esta opción le dice a su servidor web que siga los enlaces simbólicos.
    AllowOverride : especifica qué directivas declaradas en el archivo .htaccess pueden anular las directivas de configuración. ErrorLog , CustomLog : especifica la ubicación de los archivos de registro.

Puede nombrar el archivo de configuración como desee, pero la mejor práctica es utilizar el nombre de dominio como el nombre del archivo de configuración del host virtual.

Para habilitar el nuevo archivo de host virtual, necesitamos crear un enlace simbólico desde el archivo de host virtual al directorio sites-enabled para sites-enabled , que es leído por apache2 durante el inicio.

La forma más fácil de habilitar el host virtual es mediante el uso del ayudante a2ensite :

sudo a2ensite example.com

La otra opción es crear manualmente un enlace simbólico como se muestra a continuación:

sudo ln -s /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-enabled/

Una vez hecho esto, pruebe la configuración para detectar errores de sintaxis con:

sudo apachectl configtest

Si no hay errores, verá el siguiente resultado:

Syntax OK

Reinicie el servicio Apache para que los cambios surtan efecto:

sudo systemctl restart apache2

Finalmente, para verificar que todo funcione como se esperaba, abra http://example.com en el navegador que elija y verá algo como esto:

Conclusión

Ha aprendido cómo crear una configuración de host virtual apache para alojar múltiples dominios en un solo servidor Ubuntu. Puede repetir los pasos que describimos anteriormente y crear hosts virtuales adicionales para todos sus dominios.

Apache ubuntu

Esta publicación es parte de la serie how-to-install-lamp-stack-on-ubuntu-18-04.

Otras publicaciones en esta serie:

• Cómo instalar Apache en Ubuntu 18.04 • Cómo configurar Apache Virtual Hosts en Ubuntu 18.04 • Asegure Apache con Let's Encrypt en Ubuntu 18.04 • Cómo instalar MySQL en Ubuntu 18.04 • Cómo instalar PHP en Ubuntu 18.04