Creación de hosts virtuales de Apache con opciones de Enable/Disable Vhosts en Rhel/Centos 7.0

Creación de hosts virtuales de Apache con opciones de Enable/Disable Vhosts en Rhel/Centos 7.0

Alojamiento virtual Permite a Apache Weberver servir contenido diferente en función de la dirección IP, el nombre de host o el número de puerto usado. Esta guía usará un Debian como enfoque para habilitar y administrar hosts virtuales en Red Hat Enterprise Linux/Centos 7.0 creando dos directorios en /etc/httpd/ ruta, que mantendrá todas las configuraciones de archivos del sitio web habilitadas y deshabilitadas - sitios disponibles y sitios habilitados, y dos tipos de scripts para actuar como comandos, uno que habilita y otros que deshabilitan los hosts virtuales especificados - A2ensita y A2Dissite. Este enfoque tiene algunas ventajas porque ha hecho que tenga que meterse con el archivo de configuración HTTPD y cada host virtual tiene su propio archivo de configuración que se puede encontrar en una sola ubicación: los hosts habilitados son solo enlaces simbólicos, lo que hace que el proceso de habilitar, crear, o la creación o o o la creación o eliminarlos muy manejables.

APACHE Virtual Hosting con opciones de habilitación/desactivación

Requisitos

  1. Instalación básica de la lámpara en Rhel/Centos 7.0

Crear y administrar hosts virtuales Apache en Rhel/Centos 7

1. Para comenzar, comience por entrar en /etc/httpd/ ruta, crea directorios de sitios disponibles y habilitados para sitios y edite Apache httpd.confusión archivo para aplicar la nueva ubicación de sitios web habilitados.

# cd/etc/httpd/ # mkdir sitios disponible para sitios # nano conf/httpd.confusión
Crear directorios de Apache Vhost

2. En httpd.confusión Archivo Agregue la siguiente línea de directiva en la parte inferior del archivo, lo que hará que Apache lea y analice todos los archivos ubicados en /etc/httpd/sitios habilitado/ terminó en .confusión extensión.

Incluir sitios de inclusión habilitado/*.confusión
Habilitar directorios de Apache

3. En el siguiente paso, cree un nuevo host virtual en sitios disponibles Ubicación usando un nombre descriptivo: en este caso que he usado más rico.lan.confusión - y use el siguiente archivo como plantilla.

# nano/etc/httpd/sitios disponible/rheltest.lan.confusión

Use esta configuración como guía.

 Servername rheltest.LAN DocumentRoot "/var/www/rheltest.Índices de opciones de LAN "SIGUSSYMLINKS MULTIVIEWS # .archivos htaccess. Ellowoverride Todos los controles # que pueden obtener cosas de este orden de archivo de servidor Permitir, denegarse de todos los serverenvironment apache apache errorg/var/log/httpd/rheltest.error.Log CustomLog/Var/Log/Httpd/Rheltest.accidente de lan.registro combinado 
Crear apache vhosts

4. Si cambiaste Raiz del documento Ubicación en su host virtual desde el valor predeterminado /var/www/html a otra ruta asegúrese de crear esta ruta.

# mkdir -p/var/www/rheltest.lan

NOTA: También asegúrese de que ServerName Host sea un registro de DNS válido o se agrega al archivo de hosts de máquinas locales, desde donde planea visitar el sitio web.

5. Ahora es el momento de crear A2ensita y A2Dissite scripts de bash en una ruta del sistema ejecutable: en este caso es /usr/local/bin/ - pero
Puede usar cualquier ruta ejecutable que $ Salidas variables del sistema.

Crear script A2ensite

Cree un archivo siguiente con su elección de editor.

# nano/usr/local/bin/a2ensite

Agregarle el siguiente script.

#!/bin/bash if test -d/etc/httpd/sites -disponible && test -d/etc/httpd/sites -habilitado; luego hacer eco "----------------------------------------------- "De lo contrario, Mkdir/etc/httpd/sites-disponible mkdir/etc/httpd/sites-habilitado Fi disponible =/etc/httpd/sites-disponible/$ 1.conf Encapsed =/etc/httpd/sites-habilitado/sitio = "ls/etc/httpd/sites-disponible/" if ["$#" != "1"]; luego echo "Use script: a2ensite virtual_site" echo -e "\ navailable hosts virtual: \ n $ sitio" Salir 0 de lo contrario si prueba -e $ disponible; entonces sudo ln -s $ disponible $ habilitado else echo -e "$ disponible host virtual no existe! Por favor cree uno!\ n $ sitio "Salir 0 fi si prueba -e $ habilitado/$ 1.conf; luego hacer eco "éxito!! Ahora reinicie el servidor Apache: sudo systemctl reiniciar httpd "else eco -e" host virtual $ disponible no existe!\ nlease Ver hosts virtuales disponibles: \ n $ sitio "Salida 0 fi Fi
Crear script A2ensite
Crear script a2dissite

Cree un archivo siguiente con su elección de editor.

# nano/usr/local/bin/a2dissite

Agregue el script siguiente a continuación al archivo.

#!/bin/bash dispone =/etc/httpd/sites-habilitado/$ 1.conf Encapsed =/etc/httpd/sites-habilitado sitio = "ls/etc/httpd/sites-habilitado/" if ["$#" != "1"]; luego echo "Use script: a2dissite virtual_site" echo -e "\ navailable hosts virtual: \ n $ sitio" Salir 0 de lo contrario si prueba -e $ disponible; entonces sudo rm $ disponible else echo -e "$ disponible host virtual no existe! Que sale!"Salir 0 fi si prueba -e $ habilitado/$ 1.conf; luego hacer eco "error!! No se pudo eliminar el host virtual $ disponible!"más eco -e" éxito! $ disponible ha sido eliminado!\ nlease reinsart apache: sudo systemctl reiniciar httpd "Salir 0 fi Fi
Crear script a2dissite

6. Después de crear ambos archivos de script, asegúrese de que sean ejecutables y comiencen a usarlos para permitir o desactivar Hosts virtuales al agregar el nombre de Vhost como parámetro de comando.

# chmod +x/usr/local/bin/a2* # a2ensite vhost_name # a2disite vhost_name

7. Para probarlo, habilite el host virtual creado anteriormente, reinicie el servicio Apache y el navegador directo al nuevo host virtual, en este caso http: // rheltest.lan.

# A2ensite Rheltest.LAN # SystemCTL reiniciar httpd
Habilitar Apache VirtualHost Verificar Apache VirtualHost

Eso es todo! Ahora puedes usar a2eniste y A2Dissite Bash Scripts como comandos del sistema para administrar el archivo Apache Vhosts en Rhel/Centos 7.0.