Configurando servicio Apache con VirtualHost en CentOS 7/AlmaLinux/Rocky Linux

El Proyecto Apache HTTP Server es un esfuerzo de desarrollo de software colaborativo destinado a crear una implementación de código fuente robusta, comercial, funcional y de libre acceso de un servidor HTTP (Web). En Elástika podrás configurar el servicio para implementar tus sitios webs.

Para iniciar debe abrir un terminal y escribir el siguiente comando:

yum install httpd

 

Posteriormente debemos iniciar el servicio:

systemctl start httpd

Para no repetir la línea anterior cada vez que se haya reiniciado el sistema, debes ingresar el siguiente comando:

systemctl enable httpd

Una vez terminada la configuración, tenemos que averiguar qué IP posee mi servidor. Para eso podemos ejecutar los siguientes comandos, y debemos elegir uno:

ifconfig

hostname –i

Ten en cuenta que se debe permitir el tráfico web en el servidor. esta configuración se realiza a través de Iptables, es por ello que se debe abrir el archivo de configuración y agregar lo siguiente:

Ruta de configuración: /etc/sysconfig/iptables

Y escribir al final del archivo antes de COMMIT:

#permitir trafico web

-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT

 

Luego procede a reiniciar el servicio:

service iptables restart

 

El el caso de utiliza  FirewallD  en vez de iptables, ejecutar los siguientes comandos:

firewall-cmd --add-service=http --permanent
firewall-cmd --reload

 

Para comprobar la correcta instalación colocamos la siguiente línea en un navegador:


Los comandos para monitorear el estado de los puertos del servidor se muestran a través de la aplicación netstat. Esta nos ayudará a comprobar el estado correcto del servicio a través de sus puertos. Tener presente que el resultado se mostrará siempre y cuando se haya buscado el sitio web por un navegador.

netstat –a –n | grep :80

netstat –a –n | grep :443

netstat –a –n | grep :http

netstat –a –n | grep :https

netstat –a –n | grep IPdelServidor:80

 

Creando sitios webs en nuestro servidor 

Para generar el contenido, debes crear la ruta de almacenamiento del sitio web. Para ello procederemos a ejecutar las siguientes líneas desde la raíz /:

Directorio donde se almacenará tu sitio web:

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

Directorio donde se almacenarán los errores en archivos logs:

mkdir -p /var/www/example.com/logs

Dentro de la ruta /var/www/example.com/logs se realiza la creación de los archivos error.log y requests.com

Luego ingresamos al directorio public_html y creamos el Archivo principal del sitio web.

cd /var/www/example.com/public_html

vi index.html

El siguiente contenido es básico y de prueba para asegurarnos que el servicio web esté funcionando de manera correcta. Para ello es necesario agregar en el archivo index.html las siguientes líneas:

<html>

            <head>

                <title>Página de ejemplo</title>

            </head>

            <body>

                <h1> Presentamos el primer host virtual </h1>

                <h2> Procede del dominio example.com </h2>

            </body>

</html>

 

Personalizamos la configuración de los sitios webs

A través del archivo de configuración httpd.conf realizamos los cambios necesarios paranuestro sitio web:

vi /etc/httpd/conf/httpd.conf

Abrimos el archivo con la aplicación vim y escribimos : set number, y presionamos ENTER. Luego ubicamos la línea 276 y reemplazamos esa información con nuestro propio nombre de server.example.com:80. Además, en la línea 990 reemplazamos la información por la IP del servidor (192.168.1.111).

 

Linea 276  sobre CentOS

ServerName server.example.com:80

 

Línea 990 sobre CentOS

NameVirtualHost 192.168.1.111

 

Para concretar el uso de varios dominios en nuestro servidor nos dirigimos al final del archivo en la línea 1003. Allí ubicamos VirtualHost y retiramos el signo # (almohadilla):

<VirtualHost 192.168.1.111>

      ServerAdmin webmaster@example.com

DocumentRoot /var/www/html/

      ServerName example.com

      ErrorLog /var/www/example2.pe/error.log 

      CustomLog /var/www/example2.pe/requests.log common

</VirtualHost>

<VirtualHost 192.168.1.111>

      ServerAdmin web@example2.pe

            DocumentRoot /var/www/example2.pe/public_html

            ServerName example2.pe

      ServerAlias www.example2.pe

     ErrorLog /var/www/example2.pe/error.log

     CustomLog /var/www/example2.pe/requests.log common

</VirtualHost>

 

Recuerda que al finalizar algún cambio en el archivo de configuración httpd.conf debes reiniciar el servicio mencionado:

systemctl restart httpd

 

Hecho esto, felicidades. Has podido configurar el servidor con el servicio httpd y virtualhost.

 

¿Fue útil la respuesta? 1 Los Usuarios han Encontrado Esto Útil (20 Votos)