Tema anterior: WEBx4: dispositivo de servidor Web escalable

Tema siguiente: Dispositivos de base de datos


WEBx8: dispositivo de servidor Web escalable

Última versión: 2.0.2-1

WEBx8: servidor Web escalable

Vista rápida

Catálogo

Sistema

Categoría

Servidores Web

Volúmenes de usuario

yes

Memoria mín.

1376 MB

SO

Linux

Restricciones

no

Preguntas o comentarios

Pregunte en el foro

Descripción general del funcionamiento

WEBx8 es un servidor Web escalable que está formado por un solo equilibrador de carga (HLB) y ocho servidores Web (WEB5).

WEBx8 sirve contenido Web estático y ejecuta scripts de un volumen de contenido de sólo lectura configurable por el usuario. Las rutas a los documentos y los scripts son configurables, para que el mismo volumen se pueda compartir entre varios servidores Web u otros dispositivos que sirven contenido diferente.

WEBx8 tiene tres terminales de salida genéricos para acceder a servicios externos de scripts del volumen de contenido. El terminal db se usa para acceder a una base de datos MySQL; el terminal fs se usa para acceder al almacenamiento de archivos compartidos (mediante NFS); y el terminal aux se usa para enviar mensajes de correo electrónico a un servidor SMTP.

El terminal log se puede usar para conectar WEBx8 a un sistema de archivos compartido donde WEBx8 puede almacenar sus archivos de registro.

La configuración del servidor Web se proporciona a través de propiedades. Las propiedades están diseñadas para cubrir la mayoría de los usos de una forma fácil de configurar y, en la mayor parte de los casos, solamente hay que configurar unas cuantas con valores no predeterminados. Se pueden lograr configuraciones avanzadas mediante la inclusión de archivos en el formato de configuración de Apache, procedentes del volumen de contenido. El acceso a los archivos de script y al contenido y las opciones de estos se pueden especializar aún más mediante archivos .htaccess en los directorios de contenido.

Si las funciones que proporciona el dispositivo WEBx8 no cubren sus necesidades, póngase en contacto con el Soporte técnico para discutir las posibles opciones. Podemos ampliar el catálogo proporcionando dispositivos que cubren sus necesidades.

Recursos

Recurso

Mínimo

Máximo

Predeterminado

CPU

0.9

144

1.2

Memoria

1,343 GB

288 GB

1,5 GB

Ancho de banda

9 Mbps

18 Gbps

1,6 Gbps

Terminales

Nombre

Dir.

Protocolo

Descripción

in

in

HTTP

Sirve solicitudes HTTP procedentes de clientes Web. Sirve a los protocolos HTTP/1.1 y 1.0.

ctl

in

HTTP

Terminal de control que se usa para activar o deshabilitar las salidas y recuperar el estado del terminal de salida desde el equilibrador de carga.

ui

in

HTTP

Muestra una interfaz de usuario Web que contiene estadísticas de tiempo de ejecución del equilibrador de carga.

db

Saliente

MYSQL

Acceder a un servidor MySQL. El uso se define mediante los scripts que residan en el volumen de contenido (si existe alguno). Este terminal se puede dejar desconectado si no se está usando.

fs

Saliente

NFS

Acceso a un sistema de archivos de red para almacenamiento compartido de archivos que proporciona acceso de lectura/escritura al archivo a través de NFS. El uso se define mediante los scripts que residan en el volumen de contenido (si existe alguno). El software del volumen de contenido "ve" el sistema de archivos remoto montado como /mnt/fs en el espacio del sistema de archivos del dispositivo. Este terminal se puede dejar desconectado si no se está usando. El servidor conectado debe tener un recurso compartido de lectura/escritura denominado /mnt/data.

log

Saliente

CIFS

Acceso a un sistema de archivos de red basado en CIFS para almacenar registros de error y de acceso. Este terminal se puede dejar desconectado si no se está usando. El servidor conectado debe permitir inicios de sesión anónimos y debe tener un recurso compartido de lectura/escritura denominado "share".

aux

Saliente

Cualquiera

Permite acceder a un servidor SMTP para enviar correo electrónico saliente. El uso se define mediante los scripts que residan en el volumen de contenido (si existe alguno). Nota: Si Sendmail no está configurado en el dispositivo, cualquier aplicación que necesite enviar correo sólo tiene que utilizar SMTP directamente y "aux" como nombre de host de destino. Para scripts CGI de Perl, el módulo Mail::Mailer se puede utilizar para hacer esto.
Este terminal se puede dejar desconectado si no se está usando.

net

Saliente

Cualquiera

Salida de la puerta de enlace para acceso de subred.
Este terminal se puede dejar desconectado si no se está usando.

mon

Saliente

CCE

Envía estadísticas sobre uso de recursos y rendimiento.
Este terminal se puede dejar desconectado si no se está usando.

Volúmenes de usuario

Volumen

Descripción

content

Volumen de sólo lectura y compartible que proporciona el contenido Web (documentos, medios y scripts) para servirse mediante WEBx8.

El volumen puede proporcionar contenido estático y/o dinámico con un directorio configurable opcional especializado para scripts. También se puede configurar la ejecución de scripts desde cualquier directorio mediante el uso de un patrón de nombres de archivo.

Además de contenido, el directorio de documentos (configurado a través de la propiedad docs_dir) del volumen de contenido también puede contener los archivos de configuración opcionales siguientes, todos en el formato de configuración estándar de Apache (consulte http://httpd.apache.org/docs/2.0):

Propiedades

Nombre de la propiedad

Tipo

Descripción

host_name

Cadena

Nombre de host del sitio Web. WEBx8 utiliza este nombre para que aparezca en las páginas generadas automáticamente, así como para crear URL absolutas, por ejemplo, en redirecciones generadas por el servidor (como se puede haber configurado en un archivo de configuración personalizada instalado en el volumen de contenido). Observe que, aunque las redirecciones explícitas no se suelen configurar, una solicitud para un directorio sin "/" al final genera el envío de una redirección al cliente con el símbolo "/" añadido. Esta redirección utilizará el valor de host_name si se establece.
Se recomienda establecer esta propiedad correctamente si se espera que accedan a WEBx8 clientes más antiguos que no envíen un encabezado Host: con las solicitudes HTTP.
Si esta propiedad se establece como una cadena vacía, se utilizará el nombre de host empleado en la solicitud del cliente.
Valor predeterminado: vacío

admin_email

Cadena

Dirección de correo electrónico del administrador del servidor. WEBx8 utiliza este nombre para mostrarlo en las páginas generadas automáticamente.
Valor predeterminado: root@localhost

content_on_fs

Cadena

Especifica si el contenido se refiere al sistema de archivos del terminal fs o al volumen de contenido. Los valores permitidos son "on" y "off". Si el valor está establecido en "on", todo el contenido es relativo al sistema de archivos en el terminal fs. Si está establecido en "off", el contenido estará en el volumen de contenido.
Valor predeterminado: off

docs_dir

Cadena

Directorio raíz del volumen de contenido en el que se encuentran los documentos que se van a servir. Por ejemplo, puede ser /mydocs. Si docs_dir se establece como una cadena vacía, se usa el directorio raíz del volumen de contenido.
El directorio debe existir previamente en el volumen de contenido.
Valor predeterminado: vacío

docs_loc

Cadena

Una ubicación opcional dentro del espacio de nombres visible para el cliente en la que debe aparecer el contenido (el "espacio de nombres visible para el cliente" es la parte de la ruta de una URL o lo que aparece a la derecha del nombre de host en una URL, incluido el símbolo "/" delante). Si se establece como un valor no vacío, éste se convertirá en la raíz del espacio de nombres, tal y como la ve el cliente, donde aparece el directorio raíz de documento. Por ejemplo, si docs_loc se establece como subspace/samples, una solicitud HTTP de /subspace/samples/file1.html proporcionará file1.html desde el directorio raíz del documento. Tenga en cuenta que una solicitud de una ubicación que se encuentre fuera de subspace/samples devolverá un error, excepto si se trata de una solicitud de un script del directorio de scripts (consulte scripts_loc).
Esta propiedad es útil cuando WEBx8 proporciona un subespacio de un sitio Web. No añada una barra diagonal al final a este valor.
Valor predeterminado: vacío

scripts_dir

Cadena

Directorio raíz del volumen de contenido en el que se encuentran los scripts de CGI. Por ejemplo, puede ser /scripts. Se debería establecer como un valor no vacío, haciendo referencia a un directorio del volumen de contenido que contenga solamente scripts ejecutables (no se debe establecer en "/").
El directorio debe existir previamente en el volumen de contenido.
Valor predeterminado: vacío

scripts_loc

Cadena

La ubicación en el espacio Web en la que debe ser visible el directorio de scripts especificado mediante scripts_dir. Se debe establecer como una cadena no vacía para permitir el uso de un directorio de scripts especializado. Un valor típico puede ser /cgi-bin. No añada una barra diagonal al final a este valor.
Valor predeterminado: vacío

logs_enabled

Cadena

Controla si WEBx8 enviará sus registros al terminal de registros. Los valores permitidos son "on" y "off". Si se establece en "on", el terminal de registros deberá estar conectado. Si se establece en "off", no se utilizará ningún registro de acceso y el registro de error se escribirá en un archivo del sistema de archivos raíz de los servidores WEB, con una rotación semanal y un intervalo de cuatro semanas durante el que se conservarán los registros (/var/log/httpd/error_log*). Valor predeterminado: off

logs_base_dir

Cadena

Directorio en el que se almacenan los registros de WEBx8. Esta propiedad no tiene ningún efecto si logs_enabled se establece en "off". Valor predeterminado: /

error_log_level

Cadena

Nivel de severidad de los mensajes que se van a escribir en el registro de errores. Los valores permitidos son "debug", "info", "notice", "warn", "error", "crit", "alert" y "emerg". "debug" escribe la mayoría de los mensajes, "emerg" escribe solamente los mensajes de emergencia. Valor predeterminado: warn

srv2_standby

Entero

Especifica si el segundo servidor Web está en modo en espera. Si es diferente a cero, el segundo servidor WEB estará en modo en espera; de lo contrario no estará en modo en espera.
Valor predeterminado: 1

srv3_standby

Entero

Especifica si el tercer servidor Web está en modo en espera. Si es diferente a cero, el tercer servidor WEB estará en modo en espera; de lo contrario no estará en modo en espera.
Valor predeterminado: 1

srv4_standby

Entero

Especifica si el cuarto servidor Web está en modo en espera. Si es diferente a cero, el cuarto servidor Web estará en modo en espera; de lo contrario no estará en modo en espera.
Valor predeterminado: 1

srv5_standby

Entero

Especifica si el quinto servidor Web está en modo en espera. Si es diferente a cero, el quinto servidor Web estará en modo en espera; de lo contrario no estará en modo en espera.
Valor predeterminado: 1

srv6_standby

Entero

Especifica si el sexto servidor Web está en modo en espera. Si es diferente a cero, el sexto servidor Web estará en modo en espera; de lo contrario no estará en modo en espera.
Valor predeterminado: 1

srv7_standby

Entero

Especifica si el séptimo servidor Web está en modo en espera. Si es diferente a cero, el séptimo servidor Web estará en modo en espera; de lo contrario no estará en modo en espera.
Valor predeterminado: 1

srv8_standby

Entero

Especifica si el octavo servidor Web está en modo en espera. Si es diferente a cero, el octavo servidor Web estará en modo en espera; de lo contrario no estará en modo en espera.
Valor predeterminado: 1

timezone

Cadena

Especifica la zona horaria utilizada en el dispositivo. Si esta propiedad está vacía, la zona horaria no se modifica y se deja tal cual. Aquí tiene disponible una lista de zonas horarias admitidas. Valor predeterminado: vacío

Importante: Ninguna de las propiedades de cadena enumeradas distingue entre mayúsculas y minúsculas (minúscula). Todas las demás propiedades de cadena distinguen entre mayúsculas y minúsculas.

Propiedades avanzadas

Estas son propiedades adicionales que normalmente no es necesario configurar. Se pueden utilizar para ajustar WEBx8 en circunstancias no estándar. A las propiedades que tienen efecto en el funcionamiento del equilibrador de carga se les antepone "lb", por ejemplo, lb_mode.

Nombre de la propiedad

Tipo

Descripción

lb_mode

Cadena

Especifica el modo de operación y una forma de usar la llamada "cookie de sesión" para identificarse en la sesión. Los valores válidos son:
passive: la cookie no se modifica. Se espera que un valor de cookie concreto sea siempre único y que otro servidor no utilice nunca el mismo valor.
sync: la cadena de la cookie en la respuesta HTTP de un servidor se modifica de manera que sea única para el terminal del que proviene la respuesta (agregando un ID de terminal de 4 caracteres al valor de la cookie). El "ID del terminal" se elimina antes de reenviar una solicitud a un servidor en uno de los terminales outX. Además de insertar el ID del terminal, la asignación entre los valores de la cookie y los terminales de salida es la misma que para el valor "passive", es decir, se compara el valor de la cookie entera.
insert: el equilibrador de carga inserta él mismo una cookie en las respuestas devueltas al cliente que está como entrante, así cuando el cliente envíe solicitudes posteriormente con esa cookie, se dirigirán al mismo servidor que la primera solicitud de ese cliente. La cookie que inserta HALB no tiene una fecha de caducidad, lo que significa que el software del cliente no la guardará permanentemente.
source: la dirección IP origen de la solicitud se utiliza para vincular la sesión a un servidor Web de back-end concreto. Se ignora la propiedad de la cookie.
Valor predeterminado: passive.

lb_cookie_name

Cadena

El nombre de la cookie que se usa para identificar una sesión. Para los modos pasivos ("passive" e "sync", consulte la propiedad de modo abajo), este es el nombre de la cookie que han usado los servidores de back-end conectados a out1-out4 para identificar sesiones de cliente. En el modo de inserción, éste es el nombre de la cookie que HALB debe insertar en las respuestas HTTP de manera que cada cliente se "vincule" a un solo servidor. Si esta propiedad se establece como vacía, no se realiza ningún seguimiento de sesión y todas las solicitudes se distribuyen de forma ordenada y sencilla. En el modo de origen se hace caso omiso de esto.
Valor predeterminado: vacío

lb_cookie_check_length

Entero

Determina cuántos bytes del valor de la cookie se utilizan como clave única en el modo pasivo de funcionamiento para hacer coincidir la sesión con el servidor Web de back-end. El valor predeterminado 10 suele ser suficiente para todas las aplicaciones Java y PHP comunes. Este valor debe ser siempre igual o inferior a la longitud del valor de la cookie.
Valor predeterminado: 10.

lb_max_connections

Entero

Número máximo de conexiones activas simultáneas que gestiona el equilibrador de carga. Cuando se alcanza este número, se siguen aceptando nuevas conexiones, pero se retrasa su procesamiento hasta que se cierre otra conexión. En el inicio, el equilibrador de carga determina automáticamente el número máximo de conexiones basándose en la memoria disponible, lo compara con el valor de esta propiedad y utiliza el valor más bajo. Si esta propiedad es igual a 0, se utiliza el valor calculado. Observe que ni la memoria disponible ni una configuración explícita de esta propiedad tienen un efecto directo sobre el rendimiento del equilibrador o su tasa de solicitud máxima: el hecho de establecer un número bajo (o de tener poca memoria) afecta a la respuesta solamente si los servidores de back-end están realizando operaciones largas para cada solicitud (por ejemplo, búsquedas en una base de datos), lo que hace que muchas solicitudes permanezcan abiertas al mismo tiempo.
Valor predeterminado: 0

lb_backup_outputs

Cadena

Una lista delimitada por espacios o comas (out1-out4) de salidas que se consideran copias de seguridad. El tráfico se dirige a los servidores de copia de seguridad solamente si ninguno de los servidores de back-end está disponible. La finalidad de estos servidores de copia de seguridad es notificar a los clientes que algo está mal o redirigirlos, en lugar de generar errores de back-end no disponible o de tiempo de espera agotado.
Valor predeterminado: vacío

lb_healthcheck_url

Cadena

URL que se utiliza para ejecutar el control de estado de los servidores Web de back-end en los métodos de control de estado http_get y http_head. Se puede especificar como una URL completa (http://host.name/file/to/check/for.php) o como una ruta relativa (/file/to/check/for.php). Si se especifica como una URL, HALB utiliza el protocolo HTTP/1.1 mientras se realizan los controles de estado utilizando el nombre de host extraído de UR, en un encabezado "Host:". Esto permite usar hosts virtuales. Si se especifica como una ruta relativa, HALB utiliza el protocolo HTTP/1.0 y busca el documento especificado por esta propiedad. Si esta propiedad está vacía, el equilibrador de carga busca la raíz predeterminada "/" utilizando el protocolo HTTP/1.0.
Valor predeterminado: vacío

lb_healthcheck_agent

Cadena

Cadena que se utiliza como un identificador de agente para los métodos de control de estado http_get y http_head. Si su valor está vacío, se utiliza "HALB-health-check".
Valor predeterminado: vacío

lb_healthcheck_method

Cadena

Método utilizado para el control de estado de los servidores Web de back-end.
tcp_connect: el equilibrador de carga se conecta al puerto 80 del servidor Web. Si la conexión está correctamente establecida, el equilibrador de carga da por hecho que el servidor Web es operacional. Este es el método más rápido y que requiere menos recursos.
http_head: el equilibrador de carga utiliza el método HEAD para pedir el documento especificado por la propiedad lb_healthcheck_url. Esto es más lento que tcp_connect, requiere más recursos, tanto en el equilibrador de carga como en los servidores Web, pero es más fiable. Si se recibe un código de estado 2xx o 3xx desde un servidor Web, el servidor es operacional.
http_get: el equilibrador de carga utiliza el método GET para pedir el documento especificado por la propiedad lb_healthcheck_url. Este es el método más lento y que requiere mayor cantidad de recursos, pero es más fiable. Si se recibe un código de estado 2xx o 3xx desde un servidor Web, significa que el servidor es operacional. Si la propiedad lb_healthcheck_regexp está definida, el equilibrador de carga descarga el documento, incluidos todos los encabezados HTTP y el código de estado del servidor, y busca si hay coincidencias con el valor lb_healthcheck_regexp. Si se encuentra alguna coincidencia, el servidor de back-end se considera operativo; en caso contrario, se considerará que está desactivado.
Valor predeterminado: tcp_connect.

lb_healthcheck_regexp

Cadena

Cadena de prueba utilizada con el modo de control de estado http_get. Los valores cortos o comunes (por ejemplo, OK) probablemente generarán falsos positivos. Esta cadena es una expresión normal de Perl. Aquí puede encontrar más detalles sobre las expresiones normales de Perl.
Valor predeterminado: vacío

lb_healthcheck_interval

Entero

Intervalo entre los controles de estado de los servidores Web de back-end (especificado en segundos).
Valor predeterminado: 20 segundos.

lb_timeout

Entero

Tiempo de espera en segundos para que caduquen las sesiones inactivas. Si este valor se establece en cero, las sesiones inactivas no caducarán. Si se establece en un valor distinto de cero, las sesiones inactivas reanudadas después de los segundos del tiempo de espera se consideran caducadas y las solicitudes que llevan la cookie "forgotten" se tratan como si no tuvieran ninguna cookie y se dirigen a un servidor aleatorio, mediante el método de operación por turnos habitual. Esta propiedad es solamente válida para el modo pasivo; se hace caso omiso de ella en el resto de los modos.
Valor predeterminado: 0

lb_client_timeout

Entero

Tiempo de espera en segundos para esperar una solicitud de un cliente después de haber establecido la conexión.
Valor predeterminado: 150.

lb_server_timeout

Entero

Tiempo de espera en segundos para esperar una contestación de un servidor Web de back-end después de haber establecido la conexión.
Valor predeterminado: 150.

lb_conn_timeout

Entero

Tiempo de espera en segundos para establecer cualquier conexión TCP. Esto incluye los controles de estado. Se debe prestar gran atención a esta configuración, ya que si bajo una gran carga se agota el tiempo de espera de los controles de estado debido a un valor insuficientemente bajo, el equilibrador de carga comenzará a desactivar las salidas. No se recomienda establecer un valor inferior a 20 segundos.
Valor predeterminado: 20.

lb_username

Cadena

Nombre de usuario para acceder a la GUI del equilibrador de carga a través del terminal ui. Si no se especifica ningún valor, no se realizará ninguna autenticación.
Valor predeterminado: vacío

lb_password

Cadena

Contraseña para acceder a la GUI del equilibrador de carga a través del terminal ui. La contraseña se ignora si el nombre de usuario está vacío.
Valor predeterminado: vacío

lb_ctl_port

Entero

Puerto que se usa para acceder a la interfaz de control de servicios Web a través del terminal ctl.
Valor predeterminado: 80.

lb_ui_port

Entero

Puerto que se usa para acceder a la GUI de estadísticas de tiempo de ejecución del equilibrador de carga a través del terminal ui.
Valor predeterminado: 80.

cgi_ext

Cadena

Define los sufijos de los nombres de archivo para los scripts de CGI como una lista separada por espacios. Esto se utiliza para especificar los archivos que se tratarán como scripts de CGI ejecutables (en cualquier directorio) y se puede emplear como una alternativa para especificar un directorio de scripts común. Consulte las propiedades scripts_dir y scripts_loc. Valor predeterminado: .cgi

shared_perl_ext

Cadena

Define los sufijos de los nombres de archivo para los scripts de Perl en proceso como una lista separada por espacios. Esto se utiliza para especificar los archivos que se tratarán como scripts de Perl que se vayan a ejecutar con mod_perl. Cualquier extensión que coincida con otra ya especificada en cgi_ext anula el uso de CGI para esa extensión y la configura para que se ejecute mediante mod_perl en su lugar. El módulo de Perl en proceso está configurado para ejecutar scripts con las extensiones especificadas en el modo de compatibilidad de CGI. La mayoría de los scripts de Perl diseñados para ejecutarse como procesos de CGI también deberían funcionar si se configuran como scripts en proceso. Nota: Es importante revisar los scripts para ver que la inicialización de todas las variables de ámbito de archivo sean correctas, por ejemplo en el uso de "use strict;" o "use warnings;", ya que los scripts ejecutados por mod_perl se ejecutan sin reiniciar el intérprete de Perl. Si no está seguro de si sus scripts funcionarán con mod_perl, revise la documentación de mod_perl para obtener más información: http://perl.apache.org/docs/index.html.
Valor predeterminado: vacío (es decir, no se usa mod_perl)

index_files

Cadena

Lista de archivos ordenada y separada por espacios que se utiliza como una página de índice de directorio en caso de que el cliente solicite una URL que haga referencia a un nombre de directorio.
Valor predeterminado: index.html index.html.var

use_htaccess

Cadena

Especifica si se activa el uso de archivos .htaccess para el árbol de documentos completo. Esta propiedad está desactivada de forma predeterminada y sólo se debe utilizar si tiene una estructura de directorios de contenido que requiera control exhaustivo de las opciones del servidor, aunque es muy complicado configurarla mediante el uso de un conjunto de secciones de un archivo de configuración común, o si tiene un volumen de contenido configurado previamente que ya utilice .htaccess y desea evitar las molestias de volver a organizarlo. Si sólo se necesitan opciones de configuración para la raíz del documento, coloque los valores de configuración en el directorio raíz del documento, en el archivo .htconf, ya que se aplicarán exactamente igual que con .htacces, salvo que el archivo se leerá una vez en el momento del arranque. Valor predeterminado: off

max_connections

Entero

Número máximo de conexiones activas simultáneas que puede gestionar cada servidor Web. Si se alcanza este límite, las solicitudes de conexión adicionales se pondrán en cola (hasta un límite de 511) y se procesarán a medida que las conexiones activas en ese momento se vayan cerrando. Este valor se deberá elevar solamente si se espera que WEBx8 sirva un gran número de solicitudes que requieran acceso a un origen externo de datos lento (por ejemplo, consultas de base de datos de gran volumen). El número real de conexiones simultáneas se puede limitar por debajo del valor establecido para esta propiedad si el sistema no tiene suficiente memoria. Consulte la sección de Uso de memoria abajo. El valor de max_connections no puede ser superior a 256.
Valor predeterminado: 128

persistent_connections

Cadena

Controla si WEBx8 permite a los clientes pedir más de un documento en la misma conexión. Los valores permitidos son "on" y "off". Puede ser necesario desactivar las conexiones persistentes solamente si tiene problemas con clientes que no admitan HTTP/1.1 correctamente pero que no retrocedan a HTTP/1.0. Valor predeterminado: on

idle_timeout_sec

Entero

Tiempo de espera, en segundos, para mantener una conexión de cliente abierta si no hay ninguna solicitud o respuesta. Esta propiedad sólo se utiliza si persistent_connections está establecido en "on". Si se mantiene un tiempo de espera breve, las conexiones se "olvidarán" rápidamente. Valor predeterminado: 15

data_timeout_sec

Entero

Tiempo de espera, en segundos, para recibir o enviar más datos si se ha iniciado una transferencia de datos pero no se ha completado. Este tiempo de espera permite a WEBx8 eliminar las conexiones olvidadas, si bien permitiendo que se produzcan retrasos durante la transferencia. Valor predeterminado: 300

default_charset

Cadena

Conjunto de caracteres predeterminado para informar de documentos devueltos del tipo texto/html o texto/sin formato. La propiedad se debe establecer como el nombre de un conjunto de caracteres o en "off" (para desactivar el envío del encabezado de un conjunto de caracteres en las respuestas HTTP). En algunos exploradores establecer esta propiedad puede anular el valor de conjunto de caracteres proporcionado por el autor de los documentos HTML servidos, y por ello se recomienda usarla solamente si hay documentos que no contienen especificación para el conjunto de caracteres válido y se sabe por adelantado que todos los documentos servidos por WEBx8 llevan el mismo conjunto de caracteres. Los ejemplos de valores típicos pueden ser iso-8859-1 o utf-8. Valor predeterminado: off
Nota: Para cubrir los casos especiales, incluidos los antiguos scripts de CGI que no generan una metaetiqueta de tipo de contenido apropiada, la configuración por directorio del conjunto de caracteres predeterminado es posible mediante el uso de archivos de configuración personalizados almacenados en el volumen de contenido.

info_level

Cadena

Controla cuánta información revela WEBx8 sobre sí mismo a clientes Web (en respuestas HTTP y en páginas generadas automáticamente). Los valores permitidos son "full" (máxima información), "os", "minor", "major" y "prod" (mínima información). Como medida de seguridad, se recomienda revelar el mínimo de información. Valor predeterminado: prod

server_signature

Cadena

Controla si WEBx8 añade una línea de firma de servidor al final de todas las páginas generadas (por ejemplo, en páginas de error). Los valores permitidos son "on" y "off". info_level controla la cantidad de información que WEBx8 incluye en la firma. Valor predeterminado: off (sin ninguna firma).

env

Cadena

Se utiliza para pasar valores de configuración a WEBx8 como pares nombre=valor. Valor predeterminado: vacío

Importante: Ninguna de las propiedades de cadena enumeradas distingue entre mayúsculas y minúsculas (minúscula). Todas las demás propiedades de cadena distinguen entre mayúsculas y minúsculas.

Uso de memoria

Cada servidor WEB de WEBx8 se configura a sí mismo automáticamente para ejecutarse con un amplio intervalo de memoria disponible, ajustarse a aplicaciones de tamaño diferente y cargarse. A pesar de esto, tenga en cuenta que el cálculo de configuración no puede predecir el uso de memoria de los scripts de contenido dinámico que se pueden instalar en el volumen de contenido. Un script que no funcione bien puede hacer que el servidor falle, pues confirmaría incorrectamente la memoria y provocaría que el SO eliminara los procesos.

De forma predeterminada, cada WEB configura el número máximo de conexiones activas, asumiendo:

Por ejemplo, en la configuración de espacio aislado (sandbox) con 32 M, el número máximo de conexiones activas se establecerá en 8.

El número máximo de conexiones se puede limitar por debajo del valor calculado automáticamente mediante la propiedad max_connections. Recuerde que si max_connections está por encima del límite impuesto por la memoria del sistema disponible, su valor se reduce sin que se muestre ninguna advertencia.

Además, el límite de adjudicación del pre-procesador de PHP se establece como 1/2 de la memoria disponible para scripts, según los cálculos de las reglas anteriores, es decir, el PHP se configura de la siguiente forma para limitar la memoria para un script en ejecución

(system_memory - 16 MB - max_connections * 1 MB) / 2 

Donde el valor de max_connections es el más pequeño de la propiedad de max_connections y el límite impuesto por la memoria disponible (calculada asumiendo 2 MB por conexión, como se indica anteriormente). Si la propiedad max_connections se deja en su valor predeterminado, se obtendrá el valor siguiente para el límite de memoria de PHP:

(system_memory - 16 MB) / 4 

Nota: La regla del "1/2 de la memoria disponible por script" utilizada es optimista en cierto modo y se basa en el supuesto de que no todas las conexiones activas utilizarán un script de PHP que exija muchos recursos y realmente alcance el límite, o en el supuesto de que los scripts no utilizan realmente toda la memoria que adjudican.

Sugerencia: Si una aplicación que requiere mucha memoria comienza a funcionar incorrectamente cuando hay carga de trabajo (caídas en las conexiones) y no es posible aumentar la memoria disponible, intente establecer la propiedad max_connections en un valor más bajo. Esto reducirá el posible número de instancias de script que se ejecutan al mismo tiempo, lo que otorga más memoria a cada instancia para ejecutarse.

Configuración del contenido y del almacenamiento de archivos compartidos

En esta sección se proporciona información útil para configurar los scripts que sirven contenido dinámico.

Nombres de directorio fijos

Al iniciar el servidor HTTP, los directorios y archivos siguientes están disponibles dentro del espacio del sistema de archivos de cada instancia de WEB. Tenga en cuenta que no se recomienda el uso de nombres de directorio absolutos fuera de estas ubicaciones en cualquier script o archivo de configuración.

/var/www/html: raíz Web, visible como "/" para el cliente. Esto hace referencia a una ubicación en el volumen de contenido y es de sólo lectura. Nota: Si la propiedad "docs_loc" se establece, entonces /var/www/html no tendrá ningún archivo de datos en él. Añadir el valor de docs_loc producirá el nombre de un vínculo simbólico válido que hace referencia a la raíz de documentos. Este nombre de directorio y el nombre /var/www/cgi-bin y cualquiera de sus subdirectorios se pueden utilizar en archivos de configuración de Apache para establecer más valores de configuración por directorio. Así se evita que dichos archivos de configuración tengan que tener en cuenta la configuración particular de las propiedades docs_dir y scripts_dir.

/var/www/cgi-bin: vínculo simbólico a la raíz de los scripts, si se configura mediante la propiedad scripts_dir.

/mnt/fs: raíz del almacenamiento de archivo con permisos compartidos de lectura/escritura proporcionado por un servidor NFS conectado al terminal fs. Si uno no está conectado, /mnt/fs estará vacío.

Ubicaciones de espacio Web fijas

La ruta /icons/ está vinculada mediante un alias a un directorio que contiene iconos estándar para listados de directorios generados mediante servidor. Por lo tanto, si un directorio se denomina icons y está en el volumen de contenido, no estará visible.

Control de acceso

El servidor HTTP se ejecuta como el usuario 48, grupo 48. Los scripts CGI se ejecutan en el mismo contexto.

Para poder servir contenido a través de HTTP, los archivos del volumen de contenido deberían tener permisos de "lectura" para todo el mundo. Los scripts ejecutables deberían tener permisos de "lectura" y "ejecución" para todo el mundo.

Aunque el servidor Apache tiene otros medios para controlar el acceso a los archivos, también se puede eliminar el permiso de lectura para todos los usuarios referido a archivos o directorios que no deberían estar accesibles a través de HTTP. Deje la marca x en los directorios que tienen una lista a la cual no se debería tener acceso, pero que contienen archivos o subdirectorios a los que sí se puede acceder.

Envío de correo electrónico

El sistema Sendmail no se configura en WEBx8. No lo utilice para enviar correo electrónico desde este dispositivo. Si se utilizan scripts basados en Perl, el módulo de Mail::Mailer se puede utilizar para enviar correo electrónico, en caso de que esté configurado para utilizar el gestor de envío smtp. En todos los casos, el gestor de envío SMTP se debería configurar para utilizar aux como el nombre de host del servidor SMTP, por ejemplo, si se utiliza Mail::Mailer:

$mailer = new Mail::Mailer 'smtp', (Server => 'aux'); 
$mailer->open(\%headers); #... etc. 
Interior

A continuación se presenta el interior de WEBx8.

Interior del dispositivo WEBx8

Uso típico

Aplicación de 2 niveles escalable

Aplicación de 2 niveles escalable

Notas y vínculos

Limitaciones conocidas