La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene descritta la progettazione di server Web ECE e viene illustrato come risolvere alcuni dei problemi più comuni relativi a IIS.
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni di questo documento si basano sulle seguenti versioni software:
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti.
La versione ECE 11.6 e 12.0 si basa su IIS versione 8.5. Il server Web ECE utilizza IIS come server front-end, mentre il server applicazioni ECE funziona come server back-end. Il compito principale del server Web ECE è visualizzare il contenuto del sito (cartella predefinita C:\ECE\eService) e il server applicazioni è responsabile della logica, dell'interazione tra l'utente finale e il contenuto visualizzato. Il server applicazioni ECE funziona insieme al server Web, in cui uno viene visualizzato e l'altro interagisce.
Tutto il traffico in entrata viene indirizzato al front-end. Ciò significa che deve essere in ascolto della porta 80/443, in base alle associazioni del sito (Gestione IIS > Sito Web predefinito > Associazioni)
Nota: Questa è la visualizzazione predefinita quando la comunicazione con il server WEB avviene solo tramite HTTP. Per istruzioni dettagliate sull'attivazione di HTTPS, vedere la Guida di installazione e configurazione ECE, capitolo Configurazione SSL.
HTTP funziona come protocollo richiesta-risposta tra un client e un server, dove il client è un browser Web. Tutto inizia quando il browser invia una richiesta HTTP al server; la richiesta viene elaborata dal server Web ECE, ottiene la risposta dal database ECE e restituisce al client una risposta HTTP.
Il flusso di dati HTTP di base è Browser Web > Server Web ECE (IIS) > Server applicazioni ECE > Server database ECE (MS SQL). È possibile configurare i server Web dietro il servizio di bilanciamento del carico.
Suggerimento: In ambiente ECE si consiglia di mantenere il server Web ECE e/o LB nella DMZ.
Come il server Web reindirizza la richiesta al server APP?
ApplicationHost.config è il file radice della configurazione di IIS. Include le definizioni di tutti i siti, le applicazioni, le directory virtuali e i pool di applicazioni, nonché le impostazioni globali predefinite per il server Web.
Il file ApplicationHost.config è disponibile nella cartella %WINDIR%\system32\inetsrv\config
Quando viene installato il componente server Web ECE, il processo di installazione apporta modifiche, basate sui requisiti ECE, ai file di base di IIS, ovvero ApplicationHost.config. Durante l'installazione, vengono create due applicazioni. La prima è l'applicazione di sistema che ha tutto il contenuto relativo alla partizione 0. E l'applicazione predefinita che si riferisce alla partizione 1. Ciò include la console di amministrazione, l'agente leggero, la console del supervisore, i report e così via. In ECE 12.x l'agente leggero viene creato come parte di un'applicazione separata e in 12.x i clienti possono utilizzarlo in produzione senza Finesse.
Queste impostazioni vengono aggiunte dal programma di installazione ECE al file ApplicationHost.config per le applicazioni:
<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>
Il programma di installazione ECE si occupa di tutto, non è necessario apportare modifiche manuali alla configurazione nella console di gestione IIS. Se non ci sono modifiche, tutto funziona come previsto.
Si tratta dell'intero layout della cartella eService disponibile nella directory di installazione C:\ECE\eService
Il sistema fornisce l'accesso all'intera cartella eService perché esistono più componenti che devono essere raggiungibili da IIS per la corretta funzionalità dell'applicazione.
Le cartelle principali utilizzate da IIS sono modelli e Web.
Qualsiasi altra richiesta dalla piattaforma viene gestita dal reindirizzamento. Ad esempio, quando si utilizza la richiesta dell'API di disponibilità dell'agente (ECE_webserver_name/system/regain/chat/entrypoint/agentAvailability/1000), IIS utilizza le regole di riscrittura dell'URL di reindirizzamento per reindirizzare la richiesta alla porta 9001 del server applicazioni ECE:
A seconda della versione ECE, le regole di riscrittura vengono memorizzate nel file ApplicationHost.config o nei file Web.config che si trovano in %SystemDrive%\inetpub\wwwroot. In questo file è possibile visualizzare la sezione <rewrite> contenente la definizione della regola.
Il programma di installazione si occupa della sezione di riscrittura, ma a volte questi dati possono essere modificati e di conseguenza i modelli di chat o le API non funzionano correttamente. Questo è il primo punto da controllare quando si osservano questi sintomi.
In una soluzione non ridondante, il server applicazioni non richiede alcuna personalizzazione. L'installatore preinstalla e configura il sistema da solo. Tuttavia, nell'implementazione ad alta disponibilità (HA), ECE può essere installato con più server WEB e applicazioni. In questo caso, per ogni server Web nella distribuzione deve essere installato un server applicazioni separato (mappa da 1 a 1).
Come è possibile identificare il server applicazioni associato al server Web?
Il modo più rapido per verificare questa condizione consiste nell'aprire il file di configurazione che si trova sul server Web e verificare il parametro worker.default.host:
C:\ECE\eService\installation\egain-plugin\workers.properties
Le intestazioni di risposta HTTP sono coppie nome-valore di stringhe restituite da un server con il contenuto richiesto. Vengono in genere utilizzati per trasferire informazioni tecniche quali il modo in cui un browser deve memorizzare il contenuto nella cache, il tipo di contenuto, il software eseguito sul server e altro ancora. Le intestazioni di risposta HTTP sono sempre più spesso quelle che vengono convalidate dal client per il rendering delle risposte provenienti dal server. Può trattarsi di una richiesta statica o dinamica.
In ECE ogni applicazione dispone di proprietà delle intestazioni delle risposte HTTP univoche. Per impostazione predefinita, le richieste inviate al server Web hanno questa intestazione:
Compatibile con X-UA è un metatag della modalità documento che consente di scegliere quale versione di Internet Explorer deve essere visualizzata nella pagina. Impone al browser di eseguire il rendering come standard di quella particolare versione (a partire da IE 9).
In alcuni casi il programma di installazione non aggiunge l'intestazione X-UA-Compatible durante l'installazione. Ciò può verificarsi a causa delle autorizzazioni dell'account utilizzate durante l'installazione. Per risolvere il problema, questo parametro può essere aggiunto manualmente.
Attenzione: Non devono essere presenti altre intestazioni.
Nel caso in cui il server applicazioni sia attivo e in esecuzione, ma non sia possibile passare attraverso il server applicazioni e la pagina IIS restituisca un errore, può essere utile controllare le impostazioni di autorizzazione IIS. È possibile che l'account utilizzato durante l'installazione non sia in grado di leggere la cartella eService.
Se si seleziona il pool di applicazioni in Gestione IIS e si scelgono le impostazioni di base, verrà visualizzata questa finestra:
Qui il programma di installazione specifica il nome utente e la password che hanno i privilegi completi per eseguire operazioni sul percorso predefinito. Verificare che l'identità del pool di applicazioni disponga dell'accesso in lettura al percorso fisico selezionando il pulsante Impostazioni test... Se accanto a Autenticazione o Autorizzazione viene visualizzata un'icona gialla, è necessario verificare le credenziali e le autorizzazioni dell'account.
Può inoltre trattarsi di uno scenario in cui il server WEB viene spostato dalla rete locale alla DMZ. Se l'utente corrente del dominio non è presente nella DMZ, è necessario aggiornare anche le nuove credenziali utente. Può essere un utente di dominio o un amministratore locale.