Inhalt

Einführung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Webserver-Architektur

Anwendungsserver-Interaktionen

Anwendungsserverkonfiguration

HTTP-Antwortheader in IIS

IIS-Manager-Autorisierung

Einführung

Dieses Dokument beschreibt das ECE-Webserverdesign und zeigt, wie einige der häufigsten Probleme im Zusammenhang mit IIS gelöst werden können.

Voraussetzungen

Anforderungen

Cisco empfiehlt, über Kenntnisse in folgenden Bereichen zu verfügen:

- Enterprise Chat und E-Mail (ECE)

- Microsoft Internetinformationsdienste (IIS)

Verwendete Komponenten

Die Informationen in diesem Dokument basieren auf den folgenden Softwareversionen:

- ECE 11,6, 12,0

Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen.

Webserver-Architektur

ECE 11.6 und 12.0 basieren auf IIS Version 8.5. ECE-Webserver verwendet IIS, um als Front-End-Server zu arbeiten, ECE-Anwendungsserver als Backend-Server. Die Hauptaufgabe des ECE-Webservers besteht darin, den Websiteinhalt (Standardordner C:\ECE\eService) anzuzeigen, und der Anwendungsserver ist für die Logik, die Interaktion zwischen dem Endbenutzer und dem angezeigten Inhalt verantwortlich. Der ECE-Anwendungsserver arbeitet mit dem Webserver zusammen, wo der eine angezeigt wird und der andere interagiert.

Der gesamte eingehende Datenverkehr geht an das Front-End. Dies bedeutet, dass der Port 80/443 basierend auf den Sitebindungen überwacht werden muss (IIS-Manager > Standardwebsite > Bindungen).

Hinweis: Dies ist die Standardansicht, wenn die Kommunikation mit dem Webserver nur über HTTP erfolgt. Ausführliche Anweisungen zur Aktivierung von HTTPS finden Sie im ECE Installations- und Konfigurationsleitfaden, Kapitel SSL-Konfiguration.

HTTP funktioniert als Request-Response-Protokoll zwischen einem Client und einem Server, wobei der Client ein Webbrowser ist. Alles beginnt, wenn der Browser eine HTTP-Anfrage an den Server sendet. Wenn diese Anforderung vom ECE-Webserver verarbeitet wird, rufen Sie die Antwort aus der ECE-Datenbank ab und geben sie als HTTP-Antwort an den Client zurück.

Der grundlegende HTTP-Datenfluss ist Webbrowser > ECE Web Server (IIS) > ECE Application Server > ECE Database Server (MS SQL). Die Webserver können hinter dem Load Balancer konfiguriert werden.

Tipp: In der ECE-Umgebung wird empfohlen, den ECE-Webserver und/oder LB in der DMZ zu belassen.

Anwendungsserver-Interaktionen

Wie leitet der Webserver die Anforderung an den APP-Server um?

ApplicationHost.config ist die Stammdatei der IIS-Konfiguration. Sie umfasst Definitionen aller Websites, Anwendungen, virtuellen Verzeichnisse und Anwendungspools sowie globale Standardwerte für die Webservereinstellungen.

Die Datei ApplicationHost.config befindet sich im Ordner %WINDIR%\system32\inetsrv\config

Wenn die ECE-Webserverkomponente installiert ist, nimmt der Installationsprozess entsprechend den ECE-Anforderungen Änderungen an den Kerndateien von IIS (ApplicationHost.config) vor. Im Rahmen der Installation werden zwei Anwendungen erstellt. Die erste ist die Systemanwendung, die den gesamten Inhalt der Partition 0 enthält. Und die Standardanwendung, die sich auf Partition 1 bezieht. Dazu gehören die Admin-Konsole, der leichte Agent, die Supervisor-Konsole, Berichte usw. In ECE 12.x wird der Light Agent als Teil einer separaten Anwendung erstellt und in 12.x können Kunden ihn in der Produktion ohne Finesse verwenden.

Diese Einstellungen werden vom ECE-Installationsprogramm für die Anwendungen ApplicationHost.config hinzugefügt:

<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>

Das ECE-Installationsprogramm kümmert sich um alles. Sie dürfen keine manuellen Konfigurationsänderungen in der IIS-Verwaltungskonsole vornehmen. Wenn keine Änderungen vorgenommen werden, funktioniert alles wie erwartet.

Dies ist das gesamte Layout des eService-Ordners, der im Installationsverzeichnis unter C:\ECE\eService verfügbar ist.

Das System ermöglicht den Zugriff auf den gesamten eService-Ordner, da es mehrere Komponenten gibt, die von IIS aus erreichbar sein müssen, um die Funktionalität der Anwendung zu gewährleisten.

- bin enthält alle Initialisierungs-/Startdateien

- config enthält alle Konfigurationsdateien

- log enthält die Echtzeitprotokolle der Anwendung

Die von IIS verwendeten primären Ordner sind Vorlagen und Web.

- Vorlagen für jede Anfrage zum Einstiegspunkt (Chat-/Rückrufvorlage)

- Web für alle Anforderungen an die Webkonsole (Admin, System, Tools usw.)

Alle anderen Anfragen von der Plattform werden durch Umleitung bearbeitet. Wenn Sie beispielsweise eine API-Anfrage für die Agentverfügbarkeit (ECE_webserver_name/system/egain/chat/entrypoint/agentAvilability/1000) verwenden, verwendet der IIS die Umleitungsregeln für die URL-Umschreibung, um diese Anforderung an den ECE-Anwendungsserver-Port 9001 umzuleiten:

Abhängig von der ECE-Version werden die Umschreibregeln entweder in der Datei ApplicationHost.config oder in den Dateien Web.config gespeichert, die sich in %SystemDrive%\inetpub\wwwroot befinden. In dieser Datei sehen Sie den Abschnitt <rewrite>, der diese Regeldefinition enthält.

Das Installationsprogramm übernimmt den Rewrite-Abschnitt, aber manchmal können diese Daten geändert werden und die Chat-Vorlagen oder APIs funktionieren daher nicht ordnungsgemäß. Das ist also der erste Ort, der überprüft werden muss, wenn man solche Symptome sieht.

Anwendungsserverkonfiguration

Bei einer nicht redundanten Lösung ist keine Anpassung des Anwendungsservers erforderlich. Das Installationsprogramm stellt das System selbst bereit und konfiguriert es. Bei einer HA-Bereitstellung kann die ECE jedoch mit mehreren WEB- und Anwendungsservern installiert werden. In diesem Fall muss für jeden Webserver in der Bereitstellung ein separater Anwendungsserver (1 bis 1 Map) installiert werden.

Wie identifizieren Sie, welcher Anwendungsserver mit welchem Webserver verknüpft ist?

Die schnellste Möglichkeit, dies zu überprüfen, besteht darin, die auf dem Webserver gespeicherte Konfigurationsdatei zu öffnen und den worker.default.host-Parameter zu überprüfen:

C:\ECE\eService\installation\egain-plugin\workers.properties

HTTP-Antwortheader in IIS

HTTP-Antwortheader sind Namenswert-Paare von Zeichenfolgen, die von einem Server mit dem angeforderten Inhalt zurückgesendet werden. Sie werden in der Regel verwendet, um technische Informationen zu übertragen, z. B. wie ein Browser Inhalte zwischenspeichern muss, welche Art von Inhalt es ist, welche Software auf dem Server ausgeführt wird und mehr. HTTP-Response Headers sind zunehmend derjenige, der vom Client validiert wurde, um Antworten vom Server zu rendern. Es kann sich um eine statische Anforderung oder dynamische Anforderungen handeln.

In ECE verfügt jede Anwendung über eindeutige HTTP-Responses-Headers-Eigenschaften. Alle Anfragen, die zum Webserver kommen, haben diesen Header standardmäßig:

X-UA-Compatible ist ein Meta-Tag im Dokumentmodus, mit dem Sie auswählen können, als welche Version von Internet Explorer die Seite gerendert werden muss. Er zwingt den Browser, als die Standards dieser bestimmten Version (ab IE 9) darzustellen.

In einigen Fällen fügt der Installer während der Installation keinen X-UA-kompatiblen Header hinzu. Dies kann durch die Berechtigungen des Kontos geschehen, die während der Installation verwendet werden. Als Problemumgehung kann dieser Parameter manuell hinzugefügt werden.

Vorsicht: Es darf keine anderen Header geben.

IIS-Manager-Autorisierung

Wenn der Anwendungsserver aktiv ist, Sie jedoch nicht durch den Anwendungsserver navigieren können und die IIS-Seite einen Fehler ausgibt, können die IIS-Autorisierungseinstellungen überprüft werden. Es kann sein, dass das Konto, das während der Installation verwendet wurde, den eService-Ordner nicht lesen kann.

Wenn Sie den Anwendungspool im IIS-Manager auswählen und die Grundeinstellungen auswählen, wird dieses Fenster angezeigt:

Hier gibt das Installationsprogramm den Benutzernamen und das Kennwort an, die über vollständige Berechtigungen zum Ausführen von Vorgängen auf dem Standardpfad verfügen. Stellen Sie sicher, dass die Identität des Anwendungspools über Lesezugriff auf den physischen Pfad verfügt, indem Sie die Schaltfläche Testeinstellungen.. auswählen. Wenn Sie ein gelbes Symbol neben Authentifizierung oder Autorisierung sehen, müssen Sie die Anmeldeinformationen und Berechtigungen des Kontos überprüfen.

Außerdem kann es sich um ein Szenario handeln, in dem Sie den WEB-Server vom lokalen Netzwerk in die DMZ verschieben. Falls der aktuelle Domänenbenutzer nicht in der DMZ vorhanden ist, müssen die neuen Benutzeranmeldeinformationen auch hier aktualisiert werden. Dabei kann es sich um einen Domänenbenutzer oder einen lokalen Administrator handeln.