Introducción
Este documento describe el diseño del servidor Web ECE y muestra cómo resolver algunos de los problemas más comunes relacionados con IIS.
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
- Chat empresarial y correo electrónico (ECE)
- Servicios de Microsoft Internet Information Server (IIS)
Componentes Utilizados
La información que contiene este documento se basa en estas versiones de software:
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration.
Arquitectura de servidor web
ECE 11.6 y 12.0 se basa en IIS versión 8.5. El servidor Web de ECE utiliza IIS para funcionar como servidor front-end, ECE Application Server funciona como servidor Backend. La tarea principal del servidor Web de la CEPE es mostrar el contenido del sitio (carpeta predeterminada C:\ECE\eService) y el servidor de aplicaciones se encarga de la lógica, la interacción entre el usuario final y el contenido mostrado. El servidor de aplicaciones ECE funciona junto con el servidor web, donde se muestra uno y el otro interactúa.
Todo el tráfico entrante va al front-end. Esto significa que necesita escuchar el puerto 80/443, según los enlaces del sitio (Administrador de IIS > Sitio Web predeterminado > Enlaces)

Nota: Esta es la vista predeterminada cuando la comunicación con el servidor WEB es sólo a través de HTTP. Encontrará instrucciones detalladas sobre cómo activar HTTPS en la Guía de Instalación y Configuración de ECE, capítulo Configuración SSL.
HTTP funciona como un protocolo de respuesta a solicitudes entre un cliente y un servidor, donde el cliente es un navegador web. Todo comienza cuando el explorador envía una solicitud HTTP al servidor; el servidor Web de la CEPE procesa esa solicitud, obtiene la respuesta de la base de datos de la CEPE y devuelve como respuesta HTTP al cliente.
El flujo de datos HTTP básico aquí es Explorador web > Servidor web CEPE (IIS) > Servidor de aplicaciones CEPE > Servidor de base de datos CEPE (MS SQL). Los servidores web se pueden configurar detrás del equilibrador de carga.
Consejo: En el entorno de la CEPE, sugerimos mantener el servidor Web de la CEPE y/o LB en la DMZ.

Interacciones del servidor de aplicaciones
¿Cómo redirige el servidor Web la solicitud al servidor APP?
ApplicationHost.config es el archivo raíz de la configuración de IIS. Incluye definiciones de todos los sitios, aplicaciones, directorios virtuales y conjuntos de aplicaciones, así como valores predeterminados globales para la configuración del servidor web.
El archivo ApplicationHost.config se encuentra en la carpeta %WINDIR%\system32\inetsrv\config
Cuando se instala el componente de servidor Web CEPE, el proceso de instalación realiza cambios, según los requisitos de CEPE, en los archivos centrales de IIS, que es ApplicationHost.config. Como parte de la instalación, crea dos aplicaciones. La primera es la aplicación del sistema que tiene todo el contenido relacionado con la partición 0. Y la aplicación predeterminada que se relaciona con la partición 1. Esto incluye la consola de administración, el agente ligero, la consola de supervisor, los informes, etc. En ECE 12.x el agente ligero se crea como parte de una aplicación independiente y en 12.x los clientes pueden utilizarlo en producción sin Finesse.

El instalador de ECE agrega estos parámetros a ApplicationHost.config para las aplicaciones:
<sites>
<site name="Default Web Site" id="1">
<application path="/">
<virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
</application>
<application path="/system" applicationPool="DefaultAppPool">
<virtualDirectory path="/" physicalPath="C:\ECE\eService" />
<virtualDirectoryDefaults userName="CC\ipccadmin"password="[enc:AesProvider:hzS/wGBY0K6+gZcYgQstzLqbstl1v71LMBwdPyPZyUM4769Txc4kCGpDgX3xc96L:enc]" />
</application>
applicationPool="DefaultAppPool"> <virtualDirectory path="/" physicalPath="C:\ECE\eService" /> <virtualDirectoryDefaults userName="CC\ipccadmin" password="[enc:AesProvider:0LYLPJwWZjuKhRHe2WLBa1Ysk8Zj8hiPqUbqzkVRKKI=:enc]" /> </application>
applicationPool="DefaultAppPool"> <virtualDirectory path="/" physicalPath="C:\ECE\eService" /> <virtualDirectoryDefaults userName="CC\ipccadmin" password="[enc:AesProvider:VtxnHOSTlS2xo1er82ROFEAyC4PeF5a9qnasmaR+WOg=:enc]" /> </application> <bindings> <binding protocol="http" bindingInformation="*:80:" /> <binding protocol="https" bindingInformation="*:443:" sslFlags="0" /> </bindings> </site>
El instalador de ECE se ocupa de todo, no debe realizar ningún cambio de configuración manual en la consola de administración de IIS. Si no hay cambios, todo funciona como se espera.
Este es el diseño completo de la carpeta eService disponible en el directorio de instalación C:\ECE\eService

El sistema proporciona acceso a toda la carpeta eService porque hay varios componentes a los que se debe tener acceso desde IIS para obtener la funcionalidad correcta de la aplicación.
- bin contiene todos los archivos de inicialización/inicio
- config contiene todos los archivos de configuración
- log contiene los registros en tiempo real de la aplicación
Las carpetas principales que utiliza IIS son plantillas y Web.
- plantillas utilizadas para cada solicitud que llega al punto de entrada (plantilla de chat/devolución de llamada)
- Web utilizada para cualquier solicitud a la consola web (admin, sistema, herramientas, etc.)
Cualquier otra solicitud de la plataforma se gestiona mediante redirección. Por ejemplo, cuando utiliza la solicitud de API de disponibilidad del agente (ECE_webserver_name/system/egain/chat/entrypoint/agentAvilability/1000) IIS utiliza las reglas de reescritura de URL de redirección para redirigir esa solicitud al puerto del servidor de aplicaciones 9001 de la CEPE:

Según la versión de ECE, las reglas de reescritura se almacenan en el archivo ApplicationHost.config o en los archivos Web.config que se encuentran en %SystemDrive%\inetpub\wwwroot. En este archivo, puede ver la sección <reescribir> que contiene esta definición de regla.
El instalador se ocupa de la sección de reescritura, pero a veces estos datos se pueden modificar y, como resultado, las plantillas de chat o las API no funcionan correctamente. Así que ese es el primer lugar que se debe verificar cuando se ven tales síntomas.
Configuración del servidor de aplicaciones
En una solución no redundante, el servidor de aplicaciones no requiere ninguna personalización. El instalador implementa y configura el sistema por sí mismo. Sin embargo, en la implementación de alta disponibilidad (HA), la CEPE se puede instalar con varios servidores de aplicaciones y web. En tal caso, para cada servidor web de la implementación se debe instalar un servidor de aplicaciones independiente (1 a 1 mapa).
¿Cómo identifica qué servidor de aplicaciones está asociado con qué servidor web?
La manera más rápida de verificar esto es abrir el archivo de configuración que se encuentra en el servidor web y verificar el parámetro worker.default.host:
C:\ECE\eService\installation\egain-plugin\workers.properties

Encabezados de respuesta HTTP en IIS
Los encabezados de respuesta HTTP son pares nombre-valor de cadenas enviadas de vuelta desde un servidor con el contenido solicitado. Normalmente se utilizan para transferir información técnica como cómo un navegador debe almacenar en caché el contenido, qué tipo de contenido es, el software que se ejecuta en el servidor y mucho más. Cada vez más, los encabezados de respuesta HTTP son los que validan el cliente para representar las respuestas procedentes del servidor. Puede ser una solicitud estática o solicitudes dinámicas.

En ECE, cada aplicación tiene sus propiedades exclusivas de HTTP Responses Headers. Todas las solicitudes que llegan al servidor web tienen este encabezado de forma predeterminada:

X-UA-Compatible es una meta etiqueta en modo de documento que permite elegir la versión de Internet Explorer como la que se debe representar la página. Obliga al navegador a representar como estándares de esa versión en particular (a partir de IE 9).
En algunos casos el instalador no agrega encabezado X-UA-Compatible durante la instalación. Esto puede ocurrir debido a los permisos de la cuenta que se utilizaron durante la instalación. Como solución temporal, este parámetro se puede agregar manualmente.
Precaución: No debe haber otros encabezados.
Autorización del Administrador IIS
En el caso de que el servidor de aplicaciones esté activo y en ejecución, pero no pueda pasar por el servidor de aplicaciones y la página IIS produzca un error, puede resultar útil comprobar la configuración de autorización de IIS. Puede ser que la cuenta que se utilizó durante la instalación no pueda leer la carpeta eService.
Si selecciona el conjunto de aplicaciones en IIS Manager y elige la configuración básica, verá esta ventana:

Aquí el instalador especifica el nombre de usuario y la contraseña que tiene privilegios completos para realizar operaciones en la ruta predeterminada. Asegúrese de que la identidad del conjunto de aplicaciones tenga acceso de lectura a la ruta física seleccionando el botón Test Settings... Si ve un icono amarillo junto a Autenticación o Autorización, debe verificar las credenciales y los permisos de la cuenta.

Además, puede ser un escenario cuando se mueve el servidor WEB de la red local a DMZ. En caso de que el usuario de dominio actual no exista en la DMZ, las nuevas credenciales de usuario también deben actualizarse aquí. Puede ser un usuario de dominio o un administrador local.