Autor: Tao Zheng
sistema operativo Linux está muy caliente ahora, así que muchos de mis amigos quieren saber acerca de Linux, la realización de un dominio virtual. A continuación, se basa en la popular actual en RedHat para discutir.
1, configuración del servidor DNS
Sabemos que la red de Internet se basa en el protocolo TCP / IP para comunicarse entre sí deben ser la dirección IP, que se consigue a través del servidor DNS. Así que a fin de que el dominio virtual debe servidor DNS primero en aceptar el dominio virtual, es decir, que se asigna a la dirección IP especificada. Porque confiamos en distinguir el nombre de dominio del servidor Web, por lo que esta debería ser la dirección IP del servidor Web naturales gestionados.
sistema operativo integrado con RedHat 6.0 servidor DNS de BIND. Es el archivo de configuración de dominio es "/ etc /" named.conf, en circunstancias normales, la configuración del dominio archivos en / var / named "directorio.
Los casos 1, la configuración named.conf:
zona "domain.com" (
type master;
archivo "domain.com";
);
"zona 0.10.10.in-addr.arpa" (
type master;
archivo "10.10.0";
);
Los ejemplos de "domain.com" archivo de configuración de dominio es "/ var / named /" domain.com, expediente de dominio de configuración inversa es "/ var/named/10.10.0". archivo domain.com es responsable de asignar dirección IP del DNS del dominio.
Los casos 2, domain.com archivo de configuración:
@ IN SOA dns.domain.com. Hostmaster.dns.domain.com. (
1998111003; serie
3600; volver a cargar
900; vuelva a intentarlo
1209600; expirará
43200; default_ttl
)
@ IN MX 10 dns.domain.com.
@ IN NS dns.domain.com.
@ EN UN 10.10.0.1
www IN A 10.10.0.1
Se supone que aumentar el nombre de dominio es aaa.domain.com, quiero señalar a www.domain.com, los servicios de DNS, debe añadirse a un registro de alias, se puede escribir como:
AAA en www.domain.com CNAME.
Si necesita configurar un gran número de dominio virtual, domain.com archivo a ser grandes, pero también muy engorroso. Podemos usar el símbolo "*", es decir, a unirse a la domain.com archivo:
* EN CNAME www.domain.com.
Así que no poner todos los ajustes de cuenta domain.com www.domain.com a finales de todos los registros de movimiento, ya sea aaa.domain.com o bbb.domain.com. Esto no afectará el registro existente. Configurado servidor DNS debe reiniciar el demonio named:
[Dominio root @ / root] # / etc / rc.d / init.d / named reiniciar
[Siguiente]
sistema operativo Linux está muy caliente ahora, así que muchos de mis amigos quieren saber acerca de Linux, la realización de un dominio virtual. A continuación, se basa en la popular actual en RedHat para discutir.
2, configuración del servidor Apache
Apache es el más utilizado de Internet servidor Web, que puede mantener un sitio muy ocupado. RedHat 6.0 haces el 1,3 Apache Web Server. Su fichero de configuración ubicado en "/ etc / httpd / conf" del directorio, hay httpd.conf, srm.conf, access.conf, tratar los siguientes asuntos relativos a la configuración del dominio virtual:
1, de configuración estáticos
Pasos para modificar el fichero de configuración httpd.conf:
(1) En primer lugar UseCanonicalName conjunto está apagado. Indica que con el servidor de cabecera Host: sustituir el valor de contenido ServerName a proporcionar a la SERVER_NAME variable de entorno.
(2) y luego añadió:
NameVirtualHost xxx.xxx.xxx.xxx donde xxx.xxx.xxx.xxx es el servidor virtual para configurar la dirección IP. Aquí usted puede configurar múltiples direcciones IP virtuales, por supuesto, con la configuración del servidor DNS misma. (Nota: Este uso de direcciones IP, nombres de dominio no se puede utilizar.)
(3) A continuación, para cada nombre de dominio virtual mediante la adición de un registro:
VirtualHost Xxx.xxx.xxx.xxx
.....
/ VirtualHost
y el NameVirtualHost xxx.xxx.xxx.xxx a la dirección IP de la misma configuración. Entre las dos marcas se puede añadir a los parámetros de configuración son:
ServerName regresa a ver a aumentar el dominio virtual, como aaa.domain.com;
DocumentRoot Si asigna a la trayectoria de la máquina, detrás del incremento, por ejemplo "/ home / aaa";
reorientar Si asigna a una dirección URL remoto para añadir a la parte posterior, hay dos parámetros, el primero es el dominio virtual ruta de acceso relativa, el segundo es el sitio remoto de dirección;
ServerAlias después de unirse al alias de dominio, puede usar comodines como *. aaa.domain.com.
Los dos ejemplos siguientes:
Ejemplo 3, asignado a la ruta física de la máquina:
VirtualHost Xxx.xxx.xxx.xxx
DocumentRoot "/ home / test"
ServerName test.domain.com
Virtualhost
Ejemplo 4, asignación a una distancia URL:
VirtualHost Xxx.xxx.xxx.xxx
ServerName test1.doamin.com
reorientar / http://test.domain1.com/welcome.htm
/ VirtualHost
Algunos parámetros, como la ubicación del archivo de registro, la configuración de tiempo de espera, los ajustes de amortiguación, etc, no 11 en esta descripción puede referirse a los archivos del servidor Apache de ayuda en línea. Archivo httpd.conf de Apache configurado para reiniciarse después de que el demonio en el fondo httpd,
[Dominio root @ / root] # / etc / rc.d / init.d / httpd restart
Cada período adicional que deberán incrementarse en un nombre de dominio virtual en el ... VirtualHost ... / VirtualHost la configuración entre el código, y sólo después de reiniciar httpd nueva configuración surta efecto.
2, de configuración dinámica de
Se puede encontrar, si desea configurar un gran número de dominio virtual aumentará en gran medida la duración del archivo de configuración, por lo que Apache comenzará a disminuir, ocupan más memoria, pero no fácil de lograr aplicar en línea. Puede optar por configurar dinámicamente. Sin la previa y por escrito esta configuración, pero a través de la preparación de algunas reglas dinámicas para generar de forma automática, o en cualquier momento de la configuración del archivo separado para leer la información.
Apache tiene una extensión de gran alcance que el módulo (módulos) características. módulo de funciones se puede ampliar en el servidor, y lo utilizan cuando se ejecuta en el servidor, esta relación se ha colocado en el servidor para ahorrar espacio de memoria, también llamada externa proceso CGI que la velocidad.
Ahora usa un potente módulo para configurar dinámicamente un dominio virtual, es decir mod_rewrite. Es responsable de escuchar desde el cliente envía la dirección URL y la expresión sobre la base de un conjunto de reglas para volver a escribir a la dirección URL. Esto es similar al concepto de alias de URL, pero va un paso más allá, la salida de la dirección se puede asignar a ningún host dirección URL. Pasos para modificar el fichero de configuración httpd.conf:
(1) El primer conjunto UseCanonicalName está apagado.
(2) el uso de abrir motor de reescritura de RewriteEngine. Archivo de configuración con RewriteMap establecer la ubicación y características, uso y RewriteRule RewriteCond para desarrollar las normas aplicables.
Casos 5, httpd.conf archivo, la configuración de un ejemplo:
Reescribirmotor en
RewriteMap int minúsculas: tolower
# Definir una configuración de archivos separados
RewriteMap vhost dbm: / www / conf / vhostdbm
# Usar configuración archivo separado para asignar el dominio virtual
RewriteCond $ (vhost:% 1) ^(/.*)$
RewriteRule ^/(.*)$% 1/docs / $ 1
RewriteCond% (REQUEST_URI) ^ / cgi-bin /
RewriteCond $ (en minúscula:% (SERVER_NAME)) ^(.+)$
RewriteCond $ (vhost:% 1) ^(/.*)$
RewriteRule ^/(.*)$% 1/cgi-bin / $ 1
Aquí formato de archivo vhostdbm, consulte "CGI preparación del programa."
[Siguiente]
sistema operativo Linux está muy caliente ahora, así que muchos de mis amigos quieren saber acerca de Linux, el proceso de realización de los dominios virtuales. A continuación, se basa en la popular actual en RedHat para discutir.
En tercer lugar, la programación para CGI
Para solicitar un dominio virtual en línea, usted debe escribir el programa apropiado CGI dinámicamente modificar el archivo de configuración independiente (que está por encima de los archivos vhostdbm) y para la gestión de usuarios (incluyendo aplicaciones de usuario, inicio de sesión, los cambios de contraseña, etc.) Esto sólo se describen las características de funcionamiento independiente, el otro es cómo utilizar el lenguaje Perl para escribir programas CGI, por favor refiérase a la información pertinente.
vhostdbm archivo con formato DBM para recibir datos, y se compara con un archivo de texto plano puede acelerar la búsqueda de velocidad, y fáciles de modificar. Muchos sistemas UNIX han llamado dbm (gestión de base de datos) de la biblioteca estándar. La biblioteca será la clave - valor almacenado en un archivo de disco, para proporcionar sencilla herramienta de gestión de base de datos, usted puede fácilmente cambiar, añadir o borrar el contenido de los datos.
acceso Perl manera dbm: abrir el archivo a través de un proceso similar de una matriz asociativa con la base de datos dbm estará vinculado. Crear un nuevo elemento en la matriz de inmediato cambió cuando la base de datos dbm. Quitar un elemento al mismo tiempo que quitar los valores de base de datos dbm. Se puede utilizar:
1, que deseen dbm dbm serie de bases de datos y se asocia con:
dbmopen (nombrematriz% ", dbmfilename", $ mode);
Si dbmfilename no existe en la nueva biblioteca. parámetro% nombreArray es matriz asociativa de Perl (si la matriz ya tiene un valor, entonces estos valores se borrarán). La matriz asociativa conectado a la llamada dbmfilename la base de datos dbm. $ El parámetro de modo de controlar cuando se necesita para crear la biblioteca digital permisos de archivo de la biblioteca, la cifra ha sido designada como la 8-Zhi, se utiliza a menudo es 0644, pues además de los nuevos propietarios con usuarios externos a los permisos de sólo lectura, los propietarios de las aeronaves a tienen acceso total.
2, cerca de la librería dbm:
dbmclose (nombrematriz%);
biblioteca% dbm nombreArray ya está asociado con el nombre de la matriz.
Casos 6, VHOST vhostdbm abierta, o crear una biblioteca dbm:
dbmopen (VHOST% ", vhostdbm", 0644);
Ejemplo 7, los registros nuevos o modificar los registros existentes (desde el archivo HTML ubicado en el paso por los parámetros del formulario denominado vhost, rhost):
$ VHOST ($ FORM (''vhost''}}=$ FORM (''''rhost);
Ejemplo 8, eliminar el registro actual (consignada en el formulario de transferencia del archivo html sobre el parámetro denominado vhost):
eliminar VHOST $ ($ FORM (''''}}; vhost
Ejemplo n º 9, cerca vhostdbm:
dbmclose (VHOST%);
Nota: Los parámetros anteriores se han asumido transmisión a través de la comprobación, no hay repetición de la grabación, de lo contrario se llevaría al caos se han registrado.