WEB SET OPTION
WEB SET OPTION ( selector ; valor )
Parámetro | Tipo | Descripción | |
---|---|---|---|
selector | Integer | → | Código de la opción a modificar |
valor | Integer, Text, Collection | → | Valor de la opción |
Descripción
El comando WEB SET OPTION modifica el valor actual de las diferentes opciones de funcionamiento del servidor web de 4D.
Los cambios realizados en estas opciones se conservan si el servidor 4D Web se detiene y reinicia, sin embargo, no se conservan si la aplicación 4D se detiene y se reinicia.
En el parámetro selector, pase una de las constantes del tema Servidor web y pase el nuevo valor de la opción en valor:
Constante | Tipo | Valor | Comentario | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Web character set | Entero largo | 17 | Alcance: 4D local, 4D Server Descripción: conjunto de caracteres que el servidor Web 4D (con 4D en modo local y 4D Server) utiliza para comunicarse con los navegadores web que se conectan a base. El valor por defecto depende del lenguaje del sistema operativo. Este parámetro se define en las Propiedades de la base. Valores: los valores posibles dependen del modo de ejecución de la base relativos al conjunto de caracteres. Modo Unicode: cuando la aplicación se ejecuta en modo Unicode, los valores a pasar para este parámetro son los identificadores de conjunto de caracteres (MIBEnum longint o Name string, identificadores definidos por IANA, consulte: http://www.iana.org/assignments/character-sets). Esta es la lista de los identificadores correspondientes a los conjuntos de caracteres que admite el servidor Web de 4D: 4=ISO-8859-1 12=ISO-8859-9 13=ISO-8859-10 17=Shift-JIS 2024=Windows-31J 2026=Big5 38=euc-kr 106=UTF-8 2250=Windows-1250 2251=Windows-1251 2253=Windows-1253 2255=Windows-1255 2256=Windows-1256 Modo compatibilidad ASCII: 0: Occidental 1: Japonés 2: Chino 3: Coreano 4: Definido por el usuario 5: Reservado 6: Europa central 7: Cirílico 8: Árabe 9: Griego 10: Hebreo 11: Turco 12: Nórdico | |||||||||
Web Client IP address to listen | Entero largo | 23 | Alcance: todas las máquinas remotas 4D Valores posibles: ver Web IP address to listen Descripción: se utiliza para especificar este parámetro para todas las máquinas 4D remotas utilizadas como servidores web (aplicado al servidor web remoto únicamente). | |||||||||
Web CORS enabled | Entero largo | 92 | Alcance: servidor web local Descripción: estado del servicio CORS (Cross-origin resource sharing) para el servidor web. Si está habilitado, se pueden permitir llamadas XHR (por ejemplo, REST) desde páginas web fuera del dominio en su aplicación. (Nota: también se debe definir una lista de direcciones y métodos permitidos para utilizar el servicio CORS; ver Web CORS settings). Cuando el servicio CORS está deshabilitado, las solicitudes CORS se ignoran. Cuando el servicio CORS está habilitado y un dominio o método no permitido envía una solicitud entre sitios, se rechaza con una respuesta de error "403 prohibido". Valores posibles: 0 (deshabilitado, predeterminado) o 1 (habilitado) | |||||||||
Web CORS settings | Entero largo | 93 | Alcance: servidor web local Descripción: lista de host(s) y métodos(s) permitidos para el servicio CORS. Valores posibles: Colección de objetos CORS con las siguientes propiedades:
| |||||||||
Web debug log | Entero largo | 84 | Alcance: servidor web local Nota: si se reinicia el servidor HTTP, se utiliza un nuevo archivo de historial Descripción: le permite obtener o definir el estado del archivo de historial de peticiones HTTP del servidor Web 4D. Cuando se activa, este archivo, llamado "HTTPDebugLog_nn.txt", se guarda en la carpeta "Logs" de la aplicación (nn es el número de archivo). Es útil para problemas de depuración relacionados con el servidor web. Registra cada petición y cada respuesta en modo raw. La totalidad de las peticiones, encabezados, se registran; opcionalmente, también se pueden registrar partes del cuerpo. Para mayor información sobre archivos HTTPDebugLog, consulte la sección Descripción de archivos de historial. Valores: una de las constantes con el prefijo "wdl" (consulte las descripciones de estas constantes en este tema). Valor por defecto: 0 (no activado) | |||||||||
Web HSTS enabled | Entero largo | 86 | Alcance: 4D local, 4D Server. Descripción: estado HTTP Strict Transport Security (HSTS). HSTS permite que el servidor Web 4D declare que los navegadores solo deberían interactuar con él a través de conexiones HTTPS seguras. Una vez activado, el servidor web 4D agregará automáticamente información relacionada con HSTS a todos los encabezados de respuesta.Los navegadores registrarán la información HSTS la primera vez que reciban una respuesta del servidor web 4D, luego toda solicitud HTTP futura se transformará automáticamente en solicitudes HTTPS. El tiempo que el navegador almacena esta información se especifica con el selector Web HSTS max age. HSTS requiere que HTTPS esté habilitado en el servidor. HTTP también debe estar habilitado para permitir las conexiones iniciales del cliente. Valores posibles: 0 (desactivado, predeterminado) o 1 (activado) Nota: el servidor web 4D debe reiniciarse para que se aplique esta configuración. | |||||||||
Web HSTS max age | Entero largo | 87 | Alcance: 4D local, 4D Server Descripción: especifica el tiempo máximo (en segundos) que HSTS está activo para cada conexión de cliente nuevo. Esta información se almacena en el lado del cliente durante la duración especificada. Valores posibles: Entero largo (segundos) Valor por defecto: 63072000 (2 años) Atención: una vez que HSTS esté habilitado, las conexiones cliente continuarán usando este mecanismo por la duración especificada. Cuando esté probando sus aplicaciones, se recomienda establecer una duración corta para poder cambiar entre los modos de conexión segura y no segura si es necesario. | |||||||||
Web HTTP compression level | Entero largo | 50 | Alcance: Servidor web local Descripción: nivel de compresión para todos los intercambios HTTP comprimidos efectuados para el servidor HTTP de 4D (peticiones cliente o respuestas servidor, Web y servicio web). Este selector permite optimizar los intercambios con un enfoque en la velocidad de ejecución (menor compresión) o la cantidad de compresión (menor velocidad). La elección de un valor depende del tamaño y la naturaleza de los datos intercambiados. Pase de 1 a 9 en el parámetro valor, 1 es la compresión más rápida y 9 la más alta. También puede pasar -1 para obtener un compromiso entre velocidad y tasa de compresión. El nivel de compresión por defecto es 1 (compresión rápida). Valores posibles: 1 a 9 (1 = más rápido, más comprimido = 9) o -1 = mejor compromiso. | |||||||||
Web HTTP compression threshold | Entero largo | 51 | Alcance: Servidor HTTP local Descripción: en intercambios HTTP optimizados, límite de tamaño de petición por debajo del cual los intercambios no deben comprimirse. Esta opción es útil para evitar pérdidas de tiempo de máquina para comprimir intercambios muy pequeños. Pase en valor un tamaño en bytes. Por defecto, el límite de compresión se establece en 1024 bytes. Valores posibles: todo valor de tipo entero largo. El parámetro valor contiene una tamaño expresado en bytes. Por defecto, el umbral de compresión está definido en 1024 bytes. | |||||||||
Web HTTP enabled | Entero largo | 88 | Alcance: 4D local, 4D Server Descripción: estados para comunicación sobre HTTP. Valores posibles: 0 (desactivado) o 1 (activado) | |||||||||
Web HTTP TRACE | Entero largo | 85 | Alcance: servidor web local Descripción: le permite activar o desactivar el método HTTP TRACE en el servidor web de 4D. Por razones de seguridad, a partir de 4D v15 R2, por defecto, el servidor web 4D rechaza peticiones TRACE HTTP con un error 405 (ver desactivación de HTTP TRACE). Si es necesario, puede activar el método HTTP TRACE para la sesión pasando esta constante con el valor 1. Cuando se activa esta opción, el servidor web 4D responde a las solicitudes HTTP TRACE con la línea de petición, el encabezado y el cuerpo. Valores posibles: 0 (desactivado) o 1 (activado) Valor por defecto: 0 (desactivado) | |||||||||
Web HTTPS enabled | Entero largo | 89 | Alcance: 4D local, 4D Server Descripción: estado para comunicación sobre HTTPS. Valores posibles: 0 (desactivado) o 1 (activado) | |||||||||
Web HTTPS port ID | Entero largo | 39 | Alcance: 4D local, 4D Server Valores posibles: 0 a 65535 Descripción: número del puerto TCP utilizado por el servidor web de 4D en modo local y de 4D Server para conexiones seguras vía TLS (protocolo HTTPS). El número de puerto HTTPS se define en la página "Web/Configuración" de la caja de diálogo Propiedades de la base. Por defecto, el valor es 443 (valor estándar). Puede utilizar las constantes del tema Números de puerto TCP para el parámetro valor. | |||||||||
Web inactive process timeout | Entero largo | 78 | Alcance: servidor web local Descripción: permite modificar el timeout del proceso utilizado para la sesión (opción relativa al proceso). Después del timeout, el proceso se elimina en el servidor, se llama al Método base On Web Legacy Close Session y luego el contexto de la sesión se destruye. Valores: Entero largo (minutos) Valores por defecto: 480 minutos (pase 0 para restablecer el valor por defecto) | |||||||||
Web inactive session timeout | Entero largo | 72 | Alcance: servidor web local Descripción: permite modificar la duración de vida de las sesiones inactivas (duración definida en cookie). Al final de este periodo, la cookie de sesión expira y no se envía más al cliente HTTP. Valores: Entero largo (minutos) Valores por defecto: 480 minutos (pase 0 para restablecer el valor por defecto) | |||||||||
Web IP address to listen | Entero largo | 16 | Alcance: 4D local, 4D Server Descripción: dirección IP en la que el servidor web debe recibir las peticiones HTTP con 4D en modo local y 4D Server. Por defecto, ninguna dirección se especifica. Este parámetro se define en las Propiedades de la base. Este selector es útil en el caso de los servidores web 4D compilados y fusionados con 4D Desktop (no hay acceso al modo Diseño). Valores posibles: dirección IP en forma de cadena. Ambos formatos cadena IPv6 (por ejemplo, "2001:0db8:0000:0000:0000:ff00:0042:8329") y los formatos cadena IPv4 (por ejemplo, "123.45.67.89") son compatibles. Nota: por compatibilidad, las direcciones IPv4 expresadas en como longitudes hexadecimales (obsoletas) aún son compatibles. | |||||||||
Web legacy session | Entero largo | 70 | Alcance: servidor web local** Descripción**: permite activar o desactivar el modo de gestión de las sesiones (descrito en la sección Gestión de las sesiones web (heredado)). Valores: 1 (activar modo) ó 0 (desactivar modo) Valor por defecto: 1 para bases creadas en la versión 13, 0 para bases convertidas. Note que este modo activa igualmente el mecanismo de reutilización de los contextos temporales en modo remoto. Para mayor información sobre este mecanismo, consulte la descripción de esta opción en la sección Parámetros del servidor web. | |||||||||
Web log recording | Entero largo | 29 | Alcance: 4D local, 4D Server Descripción: inicia o detiene el registro de peticiones solicitudes Web recibida por el servidor web de 4D en modo local o 4D Server. Por defecto, el valor es 0 (no hay registro de peticiones). El historial de las peticiones web se guarda en un archivo texto llamado "logweb.txt" que se ubica automáticamente en la carpeta Logs de la base, junto al archivo de estructura. El formato de este fichero es determinado por el valor que se pase. Para más información sobre los diferentes formatos de historial de las peticiones, consulte la sección [#title id= "2833"/]. La activación de este archivo también se puede definir en la página "Web/Avanzado" de las Preferencias de 4D. Valores posibles: 0 = No guardar (por defecto), 1 = Registrar en formato CLF, 2 = Registrar en formato DLF, 3 = Registrar en formato DLF, 4 = Guardar en formato WLF. Atención: los formatos 3 y 4 formatos son formatos personalizados, los contenidos deben ser definidos de antemano en las Preferencias de la aplicación, página "Web/Formato del historial". Si usted utiliza uno de estos formatos sin que sus campos hayan sido seleccionados, el archivo de las peticiones no se generará. | |||||||||
Web max concurrent processes | Entero largo | 18 | Alcance: 4D local, 4D Server Descripción: límite estrictamente superior del número de procesos web de todo tipo aceptados por el servidor web con 4D en modo local y 4D Server. Cuando se alcanza el número límite (menos uno), 4D no crea un nuevo proceso y devuelve el mensaje "Servidor no disponible" (estado HTTP 503 - Servicio no disponible) a toda nueva petición. Este parámetro previene la saturación del servidor web de 4D que puede ocurrir durante un envío masivo de peticiones o de una demanda excesiva de creación de contextos. También puede definirse en la caja de diálogo de la Propiedades de la base. En teoría, el número máximo de procesos web es el resultado de dividir la memoria disponible / tamaño de la pila de un proceso web. Otra solución es ver la información sobre los procesos web que se muestra en el Explorador de ejecución: se indican el número actual de procesos web y el número máximo alcanzado desde el inicio del servidor web. Valores: todo valor entre 10 y 32 000. El valor por defecto es 100. | |||||||||
Web max sessions | Entero largo | 71 | Alcance: servidor web local** ** Descripción: permite limitar el número de sesiones simultáneas. Cuando se alcanza el número definido, la sesión más antigua se cierra (y se llama al Método base On Web Legacy Close Session) si el servidor web necesita crear una nueva. Valores posibles: Entero largo. El número de sesiones simultáneas no puede superar el número total de procesos web (opción Web Max Concurrent Processes, 100 por defecto) Valores por defecto: 100 (pase 0 para restablecer el valor por defecto) | |||||||||
Web maximum requests size | Entero largo | 27 | Alcance: 4D local, 4D Server Descripción: tamaño máximo (en bytes) de las peticiones HTTP entrantes (POST) que el servidor Web está autorizado a tratar. Por defecto, el valor es 2 000 000, es decir, un poco menos de 2 MB. El valor máximo (2 147 483 648) significa en la práctica que ningún límite se establece. Esta configuración evita la saturación del servidor Web, causada por peticiones entrantes de gran tamaño. Cuando una petición llega al límite, el servidor web de 4D la rechaza. Valores posibles: 500 000 a 2 147 483 648. | |||||||||
Web port ID | Entero largo | 15 | Alcance: 4D en modo local y 4D Server. Descripción: establece u obtiene el número del puerto TCP utilizado por el servidor web 4D con 4D en modo local y 4D Server. Por defecto, el valor es 80. El número de puerto TCP se define en la página "Web/Configuración" de la caja de diálogo Propiedades de la base. Puede utilizar una de las constantes del tema Números de puerto TCP para el parámetro valor. Este selector es útil en el marco de servidores web 4D que se compilan y fusionan utilizando 4D de escritorio (sin acceso al entorno Diseño). Valores posibles: para obtener más información sobre el número de puerto TCP, consulte la sección Parámetros del servidor web. Valor por defecto: 80 | |||||||||
Web scalable session | Entero largo | 90 | Alcance: servidor Web local Descripción: activa o desactiva el modo de gestión de sesiones escalable (descrito en la página Sesiones de usuario en developer.4d.com) Valores posibles: 1 (modo de activación) o 0 (modo de desactivación). Si se modifica el valor, el servidor web debe ser reiniciado para que se tenga en cuenta el cambio. Cuando se habilita este modo, se ignoran las siguientes opciones: Web inactive process timeout, Web max concurrent processes, Web session cookie name y Web inactive session timeout. | |||||||||
Web session cookie domain | Entero largo | 81 | Alcance: Servidor web local Descripción: define u obtiene el valor del campo "dominio" de la cookie de sesión. Este selector (así como el selector 82) es útil para controlar el alcance de las cookies de sesión: si configura, por ejemplo, el valor "/*.4d.fr" para este selector, el cliente sólo enviará una cookie cuando la petición se dirige al dominio ".4d.fr", que excluye los servidores que alojan los datos estáticos externos. Valores posibles: Texto | |||||||||
Web session cookie name | Entero largo | 73 | Alcance: servidor web local Descripción: permite definir el nombre de la cookie utilizada para almacenar el ID de la sesión. Valores: Texto Valores por defecto: "4DSID" (pase una cadena vacía para restablecer el valor por defecto) | |||||||||
Web session cookie path | Entero largo | 82 | Alcance: servidor web local Descripción: define u obtiene el valor del campo "path" de la cookie de sesión. Este selector (así como elselector 81) es útil para controlar el alcance de las cookies de sesión: si configura, por ejemplo, el valor "/4DACTION" para este selector, el cliente deberá enviar sólo una cookie para peticiones dinámicas que comiencen con 4DACTION , y no para las imágenes, páginas estáticas, etc. Valores posibles: Texto | |||||||||
Web session enable IP address validation | Entero largo | 83 | Alcance: servidorWeb Local Descripción: Activa o desactiva la validación de las direcciones IP para las cookies de sesión. Por razones de seguridad, por defecto, el servidor web de 4D verifica la dirección IP de cada solicitud que contiene una cookie de sesión y la rechaza si esta dirección no coincide con la dirección IP utilizada para crear la cookie. En algunas aplicaciones específicas, es posible que desee desactivar esta validación y aceptar las cookies de sesión, incluso cuando sus direcciones IP no coincidan. Por ejemplo, cuando los dispositivos móviles cambian entre redes WiFi y 3G/4G, su dirección IP cambia. En este caso, debe pasar 0 en esta opción para permitir que los clientes puedan seguir utilizando sus sesiones web incluso cuando las direcciones IP cambien. Tenga en cuenta que esta configuración reduce el nivel de seguridad de la aplicación. Cuando se modifica, esta configuración es efectiva inmediatamente (no es necesario reiniciar el servidor HTTP). Valores posibles: 0 (desactivado) o 1 (activado) Valor por defecto: 1 (las direcciones IP son verificadas) |
Al utilizar el selector Web debug log, puede pasar una de las siguientes constantes en el parámetro valor:
Constante | Tipo | Valor | Comentario |
---|---|---|---|
wdl disable web log | Entero largo | 0 | El archivo de historial de peticiones HTTP Web está desactivado |
wdl enable with all body parts | Entero largo | 7 | El archivo de historial de peticiones HTTP Web está activado con el cuerpo de la respuesta y la respuesta |
wdl enable with request body | Entero largo | 5 | El archivo de historial de peticiones HTTP Web está activado con el cuerpo de la respuesta únicamente |
wdl enable with response body | Entero largo | 3 | El archivo de historial de peticiones HTTP Web está activado con el cuerpo de la respuesta únicamente |
wdl enable without body | Entero largo | 1 | El archivo de historial de peticiones HTTP Web está desactivado sin el cuerpo (el tamaño del cuerpo se entrega en este caso) |
Ejemplo
La activación del archivo de historial de depuración de las peticiones HTTP sin las partes del cuerpo:
WEB SET OPTION(Web debug log;wdl enable without body)
Una entrada registrada se ve así:
# REQUEST# SocketID: 1592# PeerIP: 127.0.0.1# PeerPort: 54912# TimeStamp: 39089388#ConnectionID: 9808E3B4B06E4EB5A60E9A3FC69116BD#SequenceNumber:5GET /4DWEBTEST HTTP/1.1Accept: text/html,(...)Accept-Encoding: gzip, deflateConnection: keep-aliveHost: 127.0.0.1User-Agent: 4D_HTTP_Client/0.0.0.0# RESPONSE# SocketID: 1592# PeerIP: 127.0.0.1# PeerPort: 54912# TimeStamp: 39089389 (elapsed time: 1 ms)#ConnectionID: 9808E3B4B06E4EB5A60E9A3FC69116BD#SequenceNumber:6HTTP/1.1 200 OKAccept-Ranges: bytesConnection: keep-aliveContent-Encoding: gzipContent-Length: 3555Content-Type: text/plain; charset=UTF-8Date: Thu, 20 Apr 2017 10:51:29 GMTExpires: Thu, 20 Apr 2017 10:51:29 GMTServer: 4D/16.0.1[Body Size: 3555]