Como configurar servidor web apache

 

www.onlinetis.com

Configurar un servidor web Apache puede parecer complicado, pero se reduce a unos cuantos pasos clave. La configuración principal se realiza editando archivos de texto, principalmente httpd.conf y los archivos de configuración de sitios individuales.


1. Localización de los Archivos de Configuración

La ubicación de los archivos de configuración de Apache varía según el sistema operativo y la forma en que se instaló. Los más comunes son:

  • Sistemas basados en Debian/Ubuntu: /etc/apache2/

  • Sistemas basados en Red Hat/CentOS: /etc/httpd/

  • Windows (XAMPP, WAMP): C:\xampp\apache\conf\ o similar.

Dentro de este directorio, los archivos más importantes son:

  • httpd.conf o apache2.conf: Es el archivo de configuración principal. Contiene directivas globales que afectan a todo el servidor.

  • sites-available/ y sites-enabled/: En Debian/Ubuntu, se usan para gestionar la configuración de múltiples sitios web. Los archivos en sites-available contienen la configuración de cada sitio y se activan creando un enlace simbólico a sites-enabled.

  • mods-available/ y mods-enabled/: Se utilizan para habilitar o deshabilitar módulos de Apache.

2. Configuración Básica de httpd.conf

Este archivo es el corazón de la configuración.

  • Listen: Define el puerto en el que Apache escucha las peticiones. Por defecto es el puerto 80 para HTTP. Si necesitas usar un puerto diferente, cámbialo aquí. Ejemplo: Listen 8080.

  • ServerName: Especifica el nombre de dominio o dirección IP del servidor. Esto es crucial para que Apache sepa cómo responder a las peticiones. Ejemplo: ServerName www.ejemplo.com.

  • DocumentRoot: Indica el directorio raíz donde se encuentran los archivos de tu sitio web (HTML, CSS, etc.). Apache servirá los archivos desde esta ubicación. Ejemplo: DocumentRoot "/var/www/html".

  • DirectoryIndex: Define el nombre del archivo que Apache buscará por defecto al acceder a un directorio (ej. index.html, index.php). Ejemplo: DirectoryIndex index.html index.php.

3. Configuración de Virtual Hosts

Los Virtual Hosts permiten que un solo servidor Apache aloje múltiples sitios web. Cada sitio tiene su propia configuración. Para cada sitio que desees alojar, debes crear un archivo de configuración en el directorio sites-available (en Debian/Ubuntu) o directamente en el archivo httpd.conf (en otras distribuciones).

A continuación, un ejemplo de un archivo de Virtual Host (mi-sitio.conf):

Apache
<VirtualHost *:80>
    ServerName www.misitio.com
    ServerAlias misitio.com
    DocumentRoot /var/www/misitio.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
  • <VirtualHost *:80>: Define que este bloque de configuración se aplica a las peticiones que llegan por el puerto 80. El asterisco (*) indica que escucha en todas las interfaces de red.

  • ServerName y ServerAlias: Especifican el dominio principal y dominios alternativos para este sitio.

  • DocumentRoot: La ruta al directorio de archivos de este sitio específico.

  • ErrorLog y CustomLog: Definen la ubicación de los registros de errores y accesos para este sitio.

4. Habilitar la Configuración y Reiniciar Apache

Una vez que hayas modificado los archivos, es crucial que pruebes la sintaxis y reinicies el servicio para que los cambios surtan efecto.

  • Comprobar la sintaxis: Antes de reiniciar, verifica que no haya errores de sintaxis en tus archivos de configuración. Utiliza el siguiente comando:

    • Debian/Ubuntu: apachectl configtest o sudo apache2ctl configtest

    • CentOS/RHEL: httpd -t o sudo httpd -t

  • Reiniciar Apache: Una vez que la sintaxis es correcta, reinicia el servidor para aplicar los cambios.

    • Debian/Ubuntu: sudo systemctl restart apache2

    • CentOS/RHEL: sudo systemctl restart httpd

Entradas populares de este blog

Ciberseguridad y hacking con Whatweb

Como robar contraseñas haciendo un phishing web

Arsenal software hacking NFC