GeoShop Webserver Benutzerhandbuch



Ähnliche Dokumente
GeoShop Webserver Benutzerhandbuch

Step by Step Webserver unter Windows Server von Christian Bartl

Die Installation des GeoShop Redirector für IIS (Internet Information Server, Version 4.0, 5.0 und 6.0) umfasst folgende Teilschritte:

Tutorial -

GeoShop BatchClient Benutzerhandbuch

GeoShop Netzwerkhandbuch

Installationsanleitung SSL Zertifikat

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Installation des Zertifikats. Installationsanleitung für Zertifikate zur Nutzung des ISBJ Trägerportals

Kleines Handbuch zur Fotogalerie der Pixel AG

Live Update (Auto Update)

OP-LOG

Installation des GeoShop Redirector für Apache (Stand ) ================================================================

Musterlösung für Schulen in Baden-Württemberg. Windows Basiskurs Windows-Musterlösung. Version 3. Stand:

mysoftfolio360 Handbuch

Installation Benutzerzertifikat

Internet Explorer Version 6

CHECKZRK Benutzerhandbuch

System-Update Addendum

Publizieren von Webs mit SmartFTP

Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

Sichern der persönlichen Daten auf einem Windows Computer

FTP-Server einrichten mit automatischem Datenupload für

BAYERISCHES STAATSMINISTERIUM DES INNERN

Anleitung zur Installation von VSP-Client- Zertifikaten in Browsern

COMPUTER MULTIMEDIA SERVICE

ITF2XML. Transferservice. Version 1.1. Tel.: 044 / Fax: 044 / CH-8005 Zürich

Adminer: Installationsanleitung

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

Installationsanleitung für S-TRUST Wurzelzertifikate

Windows 7 Winbuilder USB Stick

Anleitung: Webspace-Einrichtung

BSV Software Support Mobile Portal (SMP) Stand

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

ecall Anleitung Outlook Mobile Service (OMS)

ITF2XML. Transferservice. Version 1.0. infogrips GmbH, Zürich client10.doc, Revision 1.1. Tel.: 01 / Fax: 01 /

1 Schritt: Auf der Seite einloggen und. ODER Zertifikat für VPN, wenn sie nur VPN nutzen möchten

Anhang zum Handbuch. Netzwerk

-Verschlüsselung mit S/MIME

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

HANDOUT VON: EIGENES SSL-ZERTIFIKAT FÜR DEN WHS. Copyright 2011 by s.winkler all rights reserved!

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Migration NVC 5.x auf NEM/NPro (Migration eines bestehenden, produktiven NVC Verteilservers auf NEM/NPro)

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

-Bundle auf Ihrem virtuellen Server installieren.

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

Das Handbuch zu KNetAttach. Orville Bennett Übersetzung: Thomas Bögel

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung:

Zugriff Remote Windows Dieses Dokument beschreibt die Konfiguration von Windows für den Zugriff auf

Installationsleitfaden zum Fakturierungsprogramm

Einrichten eines POP-Mailkontos unter Thunderbird Mail DE:

Erstellen sicherer ASP.NET- Anwendungen

Installation des Zertifikats

Installationsanleitung für die h_da Zertifikate

Import des persönlichen Zertifikats in Outlook Express

Installationsanleitung CLX.PayMaker Home

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

Sicherer Datenaustausch zwischen der MPC-Group und anderen Firmen. Möglichkeiten zum Datenaustausch... 2

Bedienungsanleitung für den SecureCourier

Microsoft Outlook Express 5.x (S/MIME-Standard)

Installation der Konfigurationsdateien für alle Windows-Versionen bis einschließlich Microsoft Windows 7

KOGIS Checkservice Benutzerhandbuch

Drägerware.ZMS/FLORIX Hessen

Guide DynDNS und Portforwarding

Wissenswertes über LiveUpdate

Diese Anleitung beschreibt das Vorgehen mit dem Browser Internet Explorer. Das Herunterladen des Programms funktioniert in anderen Browsern ähnlich.

26. November EFS Übung. Ziele. Zwei Administrator Benutzer erstellen (adm_bill, adm_peter) 2. Mit adm_bill eine Text Datei verschlüsseln

Wie installiere ich das CAcert Root-Zertifikat?

Anleitung: Confixx auf virtuellem Server installieren

Verwendung des IDS Backup Systems unter Windows 2000

Medea3 Print-Client (m3_print)

Clientkonfiguration für Hosted Exchange 2010

Check Service CHECKBL

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

Anleitungen zum KMG- -Konto

Installationsanleitung CLX.PayMaker Office (3PC)

Legen Sie nun dieses Verzeichnis mit dem Namen "joomla" hier an: C:xampphtdocs.

Wollen Sie einen mühelosen Direkteinstieg zum Online Shop der ÖAG? Sie sind nur einen Klick davon entfernt!

TeamSpeak3 Einrichten

Dokumentation für Windows

Installationsanleitungen

Installationsanleitung des VPN-Clients

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Windows Verbindung mit WLAN BZPflege trennen Verbindung mit WLAN EDU-BZPflege automatisch erstellen... 30

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird

How to install freesshd

Lokale Installation von DotNetNuke 4 ohne IIS

ADSL-Verbindungen über PPtP (Mac OS X 10.1)

Die Zertifikatdienste auswählen und mit weiter fortfahren. Den Hinweis mit JA bestätigen.

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Transkript:

Technoparkstrasse 1 8005 Zürich Tel.: 044 / 350 10 10 Fax.: 044 / 350 10 19 GeoShop Webserver Benutzerhandbuch Zusammenfassung Diese Dokumentation beschreibt die Konfiguration des GeoShop Webserver. 25.1.2013

Die Dokumentation darf nur mit Erlaubnis der infogrips GmbH vervielfältigt werden. Seite 2

Inhaltsverzeichnis 1. Einleitung... 4 1.1. Überblick... 4 1.2. Aufbau dieser Dokumentation... 4 1.3. Konventionen... 4 2. Publizieren von Webseiten... 5 2.1. Konfiguration in appserver.opt/appserver... 5 2.2. Konfiguration in appserver.opt/webserver... 5 3. Verschlüsselung mit HTTPS... 7 3.1. Konfiguration... 7 3.2. Serverzertifikate... 7 3.2.1. Überblick... 7 3.2.2. Selbst signiertes Serverzertifikat erstellen... 8 3.2.3. Offizielles Serverzertifikat beantragen und installieren... 8 3.3. Clientzertifikate... 9 4. Redirector... 11 4.1. Einleitung... 11 4.2. Konfiguration in appserver.opt/redirector... 11 4.3. Redirector Anwendungsbeispiele... 11 5. CGI-Schnittstelle... 13 5.1. Einleitung... 13 5.2. Installation... 13 5.3. Ausführung von CGI-Skripts... 13 5.3.1. OPT.temp_dir... 13 5.3.2. Weitere Laufzeitoptionen... 13 5.3.3. Debugging... 14 5.3.4. MIME-Type... 14 5.4. Beispiel... 14 Seite 3

1. Einleitung 1.1. Überblick Im GeoShop Server ist ein integrierter Webserver enthalten, welcher vom Benutzer für eigene Zwecke konfiguriert werden kann. Der Webserver wird aber auch vom GeoShop für die interne Kommunikation der diversen GeoShop-Module bzw. der GeoShop Server untereinander verwendet (z.b. ICS-Server oder Portalserver). Der GeoShop Webserver bietet jedoch weit mehr Funktionen als nur das Publizieren von Webseiten. Folgende Eigenschaften sind im GeoShop Webserver enthalten: Publizieren von Webseiten und grossen Dateien > 2 GByte. HTTP-Authentifizierung über GeoShop Benutzer. Verschlüsselung mit HTTPS. Integrierter Redirector mit dem Seiten aus anderen Webservern in den GeoShop Webserver eingeblendet werden können. CGI-Schnittstelle für ig/script Programme. Diese Dokumentation beschreibt die diversen Möglichkeiten der Webserver-Konfiguration. Oft ist es nicht notwendig den integrierten Webserver speziell zu konfigurieren, da der Webserver für die wichtigsten Aufgaben bereits vorkonfiguriert ist (z.b. Publizierung von client.html oder Download von Bestellungen). 1.2. Aufbau dieser Dokumentation Diese Dokumentation ist wie folgt aufgebaut: Kapitel 2: Beschreibt das Publizieren von Webseiten. Kapitel 3: Beschreibt die Verschlüsselung mit HTTPS. Kapitel 4: Beschreibt den Redirector. Kaptiel 5: Beschreibt die CGI-Schnittstelle. 1.3. Konventionen In dieser Dokumentation werden folgende Konventionen eingehalten: Kursiv fett courier Namen von Dateien und URL's neue Begriffe, Namen von Funktionen oder Methoden Programmtext oder Eingaben im Betriebssystem Seite 4

2. Publizieren von Webseiten 2.1. Konfiguration in appserver.opt/appserver Im Abschnitt AppServer von appserver.opt kann man folgende Webserver Optionen setzen: HTTP_PORT HTTP_DEFAULT IP-Port unter welchem der GeoShop Webserver gestartet werden soll (Default = 3501). Falls die Option HTTP_PORT geändert wird, muss der GeoShop Server frisch gestartet werden. Defaultseite, welche bei nicht explizit im Webserver vorhandenen Webseiten ersatzweise angezeigt wird (z.b. \www\index.html). THREAD_POOL_SIZE AUTHENTIFY Beispiel: Maximale Anzahl Threads (= Subprozesse), welche vom Webserver für die Verarbeitung von Anfragen verwendet wird (Default = 100). Dieser Wert muss nur bei extrem vielen Zugriffen auf den Webserver höher gesetzt werden. Relative URL für welche HTTP-Authentifizierung verlangt wird (Default = SWMS). Die HTTP-Authentifizierung erfolgt über einen gültigen GeoShop Benutzer. Für AUTHENTIFY darf auch eine kommaseparierte Liste von URL's angegeben werden. AppServer MAP... HTTP_PORT STRING 80 HTTP_DEFAULT STRING \www\index.html THREAD_POOL_SIZE STRING 200 AUTHENTIFY STRING test1,test2... } 2.2. Konfiguration in appserver.opt/webserver Vom GeoShop Webserver werden die Verzeichnisse \user\www und \data\download automatisch publiziert. Optional kann man mit dem Abschnitt WebServer in appserver.opt weitere Verzeichnisse im Webserver publizieren: WebServer MAP <local_url1> STRING <path1> <local_url2> STRING <path2>... <local_urln> STRING <pathn> } Die Parameter haben folgende Bedeutung: local_url Lokale URL unter welcher das Verzeichznis <path> im GeoShop Webserver publiziert werden soll. Seite 5

path Verzeichnispfad relativ zu GEOSHOP_DIR oder absoluter Pfad. ACHTUNG: Absolute Pfade sollten nur benutzt werden, wenn dies unbedingt notwendig ist. Ausserdem dürfen bei absoluten Pfaden keine Netzwerkpfade verwendet werden. Beispiel: WebServer MAP test STRING data\test } Publiziert alle Dateien im Verzeichnis GEOSHOP_DIR\data\test unter der URL http://localhost:3501/test. Der GeoShop Webserver sucht für path wie die INTERLIS-Tools zuerst im \user Ast und danach im \system Ast. Seite 6

3. Verschlüsselung mit HTTPS 3.1. Konfiguration Falls man mit den Aministrationswerkzeugen (Administrator, Ordermanger, Uploadmanager) oder mit dem GeoShop Client via HTTPS kommunzieren will, muss man folgende Schritte durchführen: 1. SSL_PORT in \user\options\appserver.opt unter AppServer setzen: AppServer MAP... SSL_PORT STRING 443... } GeoShop Webserver Benutzerhandbuch, 25.1.2013 2. GeoShop neu starten. Am Schluss von appserver.log sollte die Meldung: SSLServer started on port 443. erscheinen. 3. Jetzt kann man bereits auf den GeoShop via HTTPS zugreifen (z.b. https://localhost/geoshop/client.html im Webbrowser aufrufen). Es ist auch möglich mit beliebigen GeoShop Client-Tools (z.b. Adminstrator oder Ordermanager) auf den GeoShop zuzugreifen. Dazu muss man beim Login im Feld Server die URL https://localhost eingeben. 3.2. Serverzertifikate 3.2.1. Überblick Der GeoShop verwendet standardmässig ein selbst signiertes und für die Domain localhost ausgestelltes Serverzertifikat für die Verschlüsslung der Daten. Der Zertifikatspeicher ist unter \user\ssl\keystore abgelegt. Wenn man ein eigenes Serverzertifikat installieren will, hat man folgende Möglichkeiten: 1. Man generiert ein selbst signiertes Serverzertifikat für seine Domain. Diese Methode hat den Vorteil, dass sie schnell durchgeführt werden kann und keine weiteren (wiederkehrenden) Kosten nach sich zieht. Die Benutzer müssen jedoch im Browser das Zertifikat akzeptieren oder permanent installieren (s.a. Abschnitt Clientzertifikat). Diese Methode eignet sich daher vorallem für Testumgebungen und nicht produktive Webseiten. Das selbst erstellte Zertifikat ist (praktisch) unbeschränkt gültig. 2. Man erstellt einen Zertifikatantrag (CSR) für die gewünschte Domain und lässt diesen von einer offziellen Zertifizierungsstelle (Certificate Authority = CA) signieren. Darauf installiert man das offizielle Serverzertifikat im GeoShop. Sofern der Zertifikatantrag von einer geläufigen Zertifikatstelle (z.b. Verisign, Thawte, TC Trustcenter, etc.) signiert wurde, müssen Benutzer das Zertifikat im Browser nicht zusätzlich aktzeptieren. Allerdings muss man für die Erstellung und Verwendung des Serverzertifikat eine (wiederkehrende) Gebühr entrichten. ACHTUNG: Von einer CA signierte Serverzertifikate sind normalerweise nur ca. 3 Jahre gültig und müssen danach wieder erneuert werden. Weil es für beide Methoden Anwendungsfälle gibt, sind im nachfolgenden beide Methoden beschrieben. Seite 7

3.2.2. Selbst signiertes Serverzertifikat erstellen Ein selbst signiertes Serverzertifikat kann mit dem GeoShop wie folgt erstellt werden: 1. Öffnen Sie ein DOS-Fenster und wechseln Sie nach \user\ssl. 2. Löschen Sie die Datei "keystore" (Zertifikatspeicher). 3. Erzeugen Sie einen neuen Zertifikatspeicher mit Serverzertifikat. Dazu geben Sie folgenden Befehl ein:..\..\jre\bin\keytool -genkeypair -keystore keystore -storepass infogrips -validity 10000 -alias geoshop Die darauf folgenden Fragen müssen Sie wie folgt beantworten: Vorname- und Nachname: Hier muss der Domainname Ihrer Webseite eingegeben werden (z.b. "www.meinefirma.com") nicht Ihr Name, sonst gibt es später Probleme beim Zugriff via Browser. Organisatorische Einheit: Ihr Amt oder Ihre Abteilung. Name der Organisation: Ihr Firmenname (z.b. infogrips GmbH). Name der Stadt oder Gemeinde: Ihr Firmenstandort (z.b. Zuerich). Bundesland oder Provinz: Landescode: Kantonsname (z.b. Zuerich). CH für die Schweiz. Angaben richtig? Ja. Geben Sie Passwort für <geoshop> ein: EINGABETASTE drücken. 3.2.3. Offizielles Serverzertifikat beantragen und installieren Zuerst müssen Sie einen Zertifikatantrag (Certificate Signing Request = CSR) wie folgt erstellen: 1. Öffnen Sie ein DOS-Fenster und wechseln Sie nach \user\ssl. 2. Löschen Sie die Datei "keystore" (Zertifikatspeicher). 3. Erzeugen Sie einen neuen Zertifikatspeicher mit einem RSA Private Key. Dazu geben Sie folgenden Befehl ein:..\..\jre\bin\keytool -genkeypair -keystore keystore -storepass infogrips -alias geoshop -keyalg RSA Seite 8

Die darauf folgenden Fragen müssen Sie wie folgt beantworten: Vorname- und Nachname: Hier muss der Domainname Ihrer Webseite eingegeben werden (z.b. www.meinefirma.com) nicht Ihr Name, sonst gibt es später Probleme beim Zugriff via Browser. ACHTUNG: Dieser Punkt ist sehr wichtig. Falls Sie hier die falsche Domain angeben, können Sie das Zertifikat später nicht wie gewünscht verwenden. Organisatorische Einheit: Ihr Amt oder Ihre Abteilung (z.b. infogrips Entwicklung). Name der Organisation: Ihr Firmenname (z.b. infogrips GmbH). Name der Stadt oder Gemeinde: Ihr Firmenstandort (z.b. Zuerich). Bundesland oder Provinz: Landescode: Kantonsname (z.b. Zuerich). CH für die Schweiz. Angaben richtig? Ja. Geben Sie Passwort für <geoshop> ein: EINGABETASTE drücken. 4. Erstellen Sie einen zum Private Key passenden CSR (Certificate Request):..\..\jre\bin\keytool -certreq -keystore keystore -storepass infogrips -alias geoshop -file geoshop.csr Die Datei geoshop.csr schickt man an die ausgewählte Zertifizierungsstelle. Bei der CA muss ein DER codiertes Serverzertifikat im X-509 Format bestellt werden. Die CA liefert dann das signierte Serverzertifikat, welches man wie folgt im GeoShop installieren muss: 1. Öffnen Sie ein DOS-Fenster und wechseln Sie nach \user\ssl. 2. Importieren Sie das Serverzertifikat wie folgt:..\..\jre\bin\keytool -importcert -file <Zertifkatdatei> -keystore keystore -storepass infogrips -trustcacerts -alias geoshop Danach muss man den GeoShop frisch starten. 3.3. Clientzertifikate Dieser Abschnitt muss nur für "selbst signierte Serverzertifikate" (s.a. oben) beachtet werden. Für die Administratorwerkzeuge sind keine speziellen Clientzertifikate notwendig. Seite 9

Falls man mit einem Internet Browser (Firefox oder IE) via HTTPS auf den GeoShop zugreifen will, wird man gefragt ob man das generierte Zertifikat aktzeptieren will. Diese Fragen sollte man alle bestätigen. Hier noch ein ein paar browserspezifische Hinweise: Mozilla Firefox Im Firefox sollte man das Zertifikat "permanent" aktzepieren. Nur so wird man später nicht mehr nach dem Zertifikat gefragt. ACHTUNG: Firefox 3.0 unter Windows Vista akzeptiert keine selbst signierten Zertifikate für die Domain "localhost". Microsoft Internet Explorer (IE) Im IE muss man das Zertifikat zuerst akzeptieren und dann auf "Certifcate Error" klicken. Im Untermenü muss man auf "View Certificates" klicken und dort das Zertifiat unter "Vertrauenswürde Stammzertifikatsstellen" speichern. Sobald der IE frisch gestartet wird, erscheint kein "Certificate Error" mehr. Das Zertifikat muss für den Domainnamen des GeoShop Server ausgestellt sein (z.b. www.meinefirma.ch), sonst werden von den Browsern weiterhin Warnungen ausgegeben. Seite 10

4. Redirector 4.1. Einleitung Mit dem Redirector können Webseiten von externen Webservern im GeoShop Webserver eingebunden werden. Die externen Webseiten erscheinen für den Benutzer des GeoShop Webserver wie Seiten, welche direkt vom GeoShop Webserver geliefert werden. Der GeoShop Webserver agiert damit quasi als Proxyserver zwischen dem Client und der externen Webseite. 4.2. Konfiguration in appserver.opt/redirector Der Redirector kann im Abschitt Redirector von appserver.opt wie folgt konfiguriert werden: Redirector MAP <local_url1> STRING <external_url1>[,<user1>,<password1>] <local_url2> STRING <external_url2>[,<user2>,<password2>]... <local_urln> STRING <external_urln>[,<usern>,<passwordn>] } Die Parameter haben folgende Bedeutung: local_url external_url user password Lokale URL im GeoShop Webserver. URL des externen Webserver inkl. http:// bzw. https://. Benutzer für Basic-Authentification (optional). Passwort für Baisc-Authentification (optional). Falls man nicht sicher ist, ob der Redirector korrekt konfiguriert ist kann man mit AppServer.RE- DIRECTOR_DEBUG STRING ON (Default: OFF) Meldungen zur Weiterleitung in appserver.log aktivieren. Beispiel: Redirector MAP meta STRING http://www.infogrips.ch/servlet/redirector/meta } Mit der obigen Definition kann man z.b. via http://localhost:3501/meta/geoshop/client.html auf den GeoShop Client des infogrips Metashop zugreifen. 4.3. Redirector Anwendungsbeispiele Zum Schluss sind noch ein paar Anwendungsbeispiele zum GeoShop Redirector zusammen gestellt: Publizieren von mehreren unabhängigen GeoShop Installationen auf Port 80 Manchmal möchte man auf dem gleichen Server mehrere GeoShop Server installieren, aber trotzdem alle diese Server via Port 80 erreichen. Das ist normalerweise nicht Seite 11

möglich, weil jeder GeoShop Server einen eigenen IP-Port für den HTTP-Server benötigt. Man kann sich nun wie folgt behelfen: Ein GeoShop Server wird auf Port 80 eingerichtet (= Proxyserver), die anderen GeoShop Server auf beliebigen Ports. Im Proxyserver richtet man den Redirector so ein, dass die anderen GeoShop Server als Subadressen im Proxyserver erscheinen. Zugriff auf HTTPS verschlüsselte Webseiten in ICS-Skripts Das infogrips Conversion System (ICS) hat eine eingebaute SOCKET Klasse mit welcher man auf externe Webseiten zugreifen kann. Die SOCKET Klasse untersützt aber im Moment kein HTTPS. Dazu richtet man im GeoShop einen Redirect auf die externe mit HTTPS verschlüsselte Webseite ein. Der ICS-Skript kann dann via den GeoShop per HTTP auf die externe Webseite zugreifen. Ausführen von Java Applets von externen Webseiten Die Java-Runtime (JRE) verhindert normalerweise die Ausführung von Java-Applets auf externen Webservern (Sicherheitseinschränkung). Wenn man nun aber die externe Webseite im GeoShop via Redirector "einblendet", kann man das Applet dennoch via GeoShop Webserver ausführen. Die JRE meint in diesem Fall, dass das Applet direkt vom GeoShop Webserver kommt und "sieht" daher den externen Webserver nicht. Zugriff auf geschützte externe WMS-Seiten Im GeoShop WMS-Server ist auch ein WMS-Client eingebaut. Der WMS-Client kann exteren WMS-Seiten im GeoShop WMS-Server verfügbar machen. Der WMS-Client unterstützt jedoch keine HTTP-Authentifizierung. Mit den Redirector Optionen <user> und <passwort> kann man dieses Problem elegant lösen, indem man die WMS-Anfragen via den Redirector an den externen WMS-Server weiter leitet. Es ist grundsätzlich möglich mehrere GeoShop Redirector miteinander zu verbinden. Der kreativen Anwendung des Redirector werden hier also keine unnötigen Hindernisse in den Weg gelegt. Seite 12

5. CGI-Schnittstelle 5.1. Einleitung Mit der CGI-Schnittstelle ist es möglich ig/script Programme im Webserver auszuführen um z.b. dynamsche Webseiten zu generieren (z.b. als Resultat einer DB-Anfrage). Damit ein CGI- Script vom Webserver ausgeführt werden kann, muss es die Dateiendung.igs aufweisen (z.b. test.igs). CGI-Skripts werden normalerweise im Verzeichnis \user\www\igs abgelegt. Es kann jedoch auch jedes andere vom Webserver publizierte Verzeichnis für die Ablage von CGI- Skripts verwendet werden. 5.2. Installation Damit CGI-Skripts im GeoShop ausgeführt werden können, muss zuerst im GeoShop Server der Dienst igs einem oder mehreren ICS-Servern zugewiesen und gestartet werden (s.a. Geo- Shop Administrator bzw. Konfigurationsdatei \user\services\services.srv). 5.3. Ausführung von CGI-Skripts Wenn ein Benutzer auf die URL eines CGI-Skripts zugreift, wird der Skript vom GeoShop Webserver mit Hilfe von ics.exe ausgeführt. Der Standardoutput des CGI-Skripts wird dann als Resultat vom GeoShop Webserver zurück gegeben. 5.3.1. OPT.temp_dir Für temporäre Dateien erzeugt der Webserver vor dem Aufruf des Skripts automatisch ein temporäres Verzeichnis. Der Pfad zu diesem Verzeichnis wird dem Skript als OPT.temp_dir übergeben. Es ist wichtig, dass ein CGI-Skript temporäre Zwischenresultate in das Verzeichnis OPT.temp_dir schreibt. Sonst kann es zu Konflikten mit anderen gleichzeitig laufenden CGI- Sripts kommen. Nach der Ausführung des CGI-Scripts wird das Verzeichnis OPT.temp_dir automatisch wieder gelöscht. 5.3.2. Weitere Laufzeitoptionen Neben OPT.temp_dir stellt der GeoShop dem CGI-Script folgende zusätzliche Laufzeitoptionen zur Verfügung: OPT.URL Relative URL des aufgerufenen.igs Skript. Client HTTP-Parameter ICS Optionen Alle HTTP-Parameter welcher der aufrufende HTTP-Client schickt in der Form OPT.<HTTP-Param> (z.b. OPT.Host, OPT.User-Agent, OPT.Accept-Encoding, etc.). Alle Optionen, welche ein ICS-Skript zur Laufzeit erhält (z.b. OPT.user_dir, OPT.system_dir, OPT.data_dir, etc.). Auf die Optionen des GeoShop Server in appserver.opt kann über die Map OPTIONS zugegriffen werden. Dazu muss aber vorgängig die Bibliothek \script\util.lib im Skript eingebunden werden. Seite 13

5.3.3. Debugging Für das CGI-Debugging steht folgende Option im Abschnitt AppServer von appserver.opt zur Verfügung: ICS_DEBUG Debugging von CGI-Skripts ein- (ON) oder ausschalten (OFF) (Default = OFF). Wenn die Option auf ON gesetzt wird, wird der Debugging Output in die Datei \data\temp\igs.log geschrieben (s.a. CGI-Schnittstelle). 5.3.4. MIME-Type Der Standard MIME-Type eines CGI-Skripts ist text/xml, da die meisten CGI-Skripts im GeoShop für die Generierung von XML-Dateien verwendet werden (z.b. SOAP-Schnittstelle oder getcapabilities.igs des WMS-Server). Falls ein CGI-Skript einen anderen MIME-Type zurück geben soll (z.b. text/html), muss man als letzten Befehl im Skript folgende Zeile einfügen: OPT.mime_type '<MIME-Type>' SERIAL.SAVE_OBJECT 5.4. Beispiel Zum Abschluss ist hier noch ein vollständiges Beispiel für einen CGI-Skript angegeben: LICENSE \license\geoshop.lic DISPLAY '<html>' DISPLAY '<head>' DISPLAY '<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">' DISPLAY '</head>' DISPLAY '<body>' DISPLAY '<title>hello, world!</title>' DISPLAY '</body>' DISPLAY '</html>' OPT.mime_type 'text/html' SERIAL.SAVE_OBJECT Falls der obige Skript unter \user\www\igs\hello.igs abgespeichert wird, erzeugt der Aufruf der URL http://localhost:3501/igs/hello.igs im Webbrowser den folgenden Output: hello, world! Seite 14