[Inteproxy-commits] r302 - in trunk: . server/doc/source server/doc/source/images

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Wed May 25 17:22:56 CEST 2011


Author: bjoern
Date: 2011-05-25 17:22:54 +0200 (Wed, 25 May 2011)
New Revision: 302

Added:
   trunk/server/doc/source/gettingStarted.rst
   trunk/server/doc/source/images/more.png
   trunk/server/doc/source/installApache.rst
Modified:
   trunk/ChangeLog
   trunk/server/doc/source/anforderungen.rst
   trunk/server/doc/source/download.rst
   trunk/server/doc/source/ersterTest.rst
   trunk/server/doc/source/index.rst
   trunk/server/doc/source/konfigurationsdateiInteProxy.rst
   trunk/server/doc/source/konfigurationsdateiVirtualHost.rst
   trunk/server/doc/source/proxyRemote.rst
Log:
Update InteProxy Server documentation according to the wishes of the users.



Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/ChangeLog	2011-05-25 15:22:54 UTC (rev 302)
@@ -1,3 +1,18 @@
+2011-05-25  Bjoern Schilberg <bjoern.schilberg at intevation.de>
+
+	* A server/doc/source/installApache.rst,
+	  M server/doc/source/konfigurationsdateiVirtualHost.rst,
+	  A server/doc/source/gettingStarted.rst,
+	  M server/doc/source/konfigurationsdateiInteProxy.rst,
+	  M server/doc/source/proxyRemote.rst,
+	  M server/doc/source/anforderungen.rst,
+	  A server/doc/source/images/more.png,
+	  M server/doc/source/ersterTest.rst,
+	  M server/doc/source/index.rst,
+	  M server/doc/source/download.rst:
+	  Update InteProxy Server documentation according to the wishes of the
+	  users.
+
 2011-04-08  Stephan Holl  <stephan.holl at intevation.de>
 
 	* server/doc/source/installationWindowsServer2003.rst,

Modified: trunk/server/doc/source/anforderungen.rst
===================================================================
--- trunk/server/doc/source/anforderungen.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/anforderungen.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -4,7 +4,12 @@
 Anforderungen
 =============
 
-Der InteProxy Server benötigt einen `Apache HTTP Server 2
+
+
+Benötigte Apache HTTP Server Module
+===================================
+
+Der InteProxy Server benötigt einen aktuellen `Apache HTTP Server 
 <http://httpd.apache.org>`_ und die folgenden Apache-Module:
 
 - `mod_rewrite <http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html>`_
@@ -23,6 +28,19 @@
   - `mod_substitute <http://httpd.apache.org/docs/2.2/mod/mod_substitute.html>`_ (Modul erst ab Apache Version 2.2.7 verfügbar)
   - `mod_filter <http://httpd.apache.org/docs/2.2/mod/mod_filter.html>`_ (Modul erst ab Apache Version 2.1 verfügbar)
 
+.. note:: 
+
+   In den Versionen größer oder gleich der Version 2.2.15 sind
+   alle benötigten Apache HTTP Server Module bereits vorhanden.
+
+
+
+weitere Anforderungen
+=====================
+
+- `Python <http://www.python.org/>`_
+- `lxml XML toolkit <http://lxml.de>`_
+
 Für die Ausführung des ``create-rewrite-rules.py`` Skripts werden zusätzlich
 eine `Python <http://www.python.org/>`_-Umgebung und das Python-Paket `lxml
-<http://codespeak.net/lxml/>`_ benötigt.
+<http://lxml.de/>`_ benötigt.

Modified: trunk/server/doc/source/download.rst
===================================================================
--- trunk/server/doc/source/download.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/download.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -1,10 +1,11 @@
 .. _download:
 
-========
-Download
-========
-Die aktuellsten Versionen des InteProxy Servers befinden sich unter:
+=========================
+Download InteProxy Server
+=========================
+
+Die aktuellste Version des InteProxy Servers befinden sich unter:
 http://inteproxy.wald.intevation.org.
 
-InteProxy Server ist Freie Software und unter der `GNU GPL (Version 2)
+Der InteProxy Server ist Freie Software und unter der `GNU GPL (Version 2)
 <http://www.gnu.org/licenses/old-licenses/gpl-2.0.html>`_ lizensiert.

Modified: trunk/server/doc/source/ersterTest.rst
===================================================================
--- trunk/server/doc/source/ersterTest.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/ersterTest.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -1,6 +1,8 @@
-===========
-Erster Test
-===========
+.. _test:
+
+===========================
+Testen von InteProxy Server
+===========================
 Der InteProxy Server bietet die Möglichkeit als normaler HTTP-Web-Proxy zu
 arbeiten. Im Folgenden wird die Betriebsart als HTTP-Web-Proxy an Beispielen
 inklusive Konfigurationsschritten vorgestellt.

Added: trunk/server/doc/source/gettingStarted.rst
===================================================================
--- trunk/server/doc/source/gettingStarted.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/gettingStarted.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -0,0 +1,184 @@
+===============
+Getting started
+===============
+
+Dieses Tutorial führt Sie schrittweise durch den InteProxy Server
+Installationsprozeß unter Linux. 
+
+Die grünen Pfeile verweisen auf Kapitel zu denen Sie "mehr Infos" zu dem
+beschriebenen Schritt erhalten.
+
+.. note::
+
+   Führen Sie die nachfolgenden Schritte als `root`-Benutzer aus.
+
+
+
+Schritt 1: Installation Apache HTTP Server
+==========================================
+
+Installieren Sie einen **aktuellen** Apache HTTP Server (**mindestens Version
+2.2.15**) mit Hilfe der Paketverwaltung der verwendeten Linux-Distribution.
+
+|more| Hier finden Sie weitere Informationen zur :ref:`Installation des Apache
+HTTP Server <installApache>`.
+
+
+
+Schritt 2: Herunterladen des InteProxy Servers
+==============================================
+
+Laden Sie den aktuellen InteProxy Server herunter und entpacken Sie den
+InteProxy Server in das Verzeichnis :file:`/opt`. ::
+
+ tar zxf InteProxy-SERVER-1.0.3.tar.gz -C /opt
+
+|more| Wo Sie den InteProxy Server herunterladen können erfahren Sie im Kapitel
+:ref:`Download InteProxy Server <download>`.
+
+
+
+Schritt 3: Einrichten der Apache Umgebung
+=========================================
+
+
+Einrichten des VirtualHosts
+---------------------------
+
+Der InterProxy Server wird als separater `VirtualHost
+<http://httpd.apache.org/docs/2.2/mod/core.html#virtualhost>`_ betrieben,
+erstellen Sie hierfür eine symbolische Verknüpfung auf die InteProxy Server
+VHost-Konfigurationsdatei
+:file:`/opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy.conf` in dem
+entsprechenden Apache Verzeichnis.
+
+.. note::
+
+   Das Setzen des symbolischen Links ist abhängig von der eingesetzten Distribution.
+
+   - **Debian**: ``ln -s /opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy.conf /etc/apache2/sites-available/inteproxy.conf``
+   - **SuSE**: ``ln -s /opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy.conf /etc/apache2/vhosts.d/inteproxy.conf``
+
+|more| Eine detallierte Erläuterung der VirtualHost Konfigurationsdatei finden
+Sie im Kapitel :ref:`VirtualHost Konfigurationsdatei <vhost>`.
+
+
+Konfigurieren der InteProxy Server Portnummer
+---------------------------------------------
+
+Der InteProxy Server nimmt Anfragen auf der Portnummer ``64609`` entgegen.
+Ergänzen Sie die InteProxy Server Portnummer im Kontext der Apache HTTP
+Server-Konfiguration, in dem Sie die folgende Zeile hinzufügen:
+
+.. code-block:: apache
+
+   Listen 64609
+
+.. note::
+
+   Die Konfigurationsdatei für das Setzen der Portnummer ist abhängig von der
+   eingesetzten Distribution.
+
+   - **Debian**: :file:`/etc/apache2/ports.conf`
+   - **SuSE**:   :file:`/etc/apache2/listen.conf`
+
+
+Einbinden der benötigten Apache Module
+--------------------------------------
+
+.. warning::
+
+   Dieser Schritt ist zwingend erforderlich.
+
+Für den Betrieb von InteProxy Server werden bestimmte Apache Module benötigt.
+Um die benötigten Apache Module zu laden, entfernen Sie in der InteProxy Server
+VHost-Konfigurationsdatei
+:file:`/opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy.conf` den Kommentar
+vor der ``Include``-Zeile, welche Ihrer Distribution entspricht. Im folgenden Beispiel
+sehen Sie das Einbinden der benötigten Apache Module unter Debian.
+
+.. code-block:: apache
+
+   ## Apache Module for SuSE
+   #Include /opt/InteProxy-SERVER-1.0.0/server/conf/platform-suse.conf
+
+   # Apache Module for Debian
+   Include /opt/InteProxy-SERVER-1.0.0/server/conf/platform-debian.conf
+
+   ## Apache Module for Windows Server
+   #Include /opt/InteProxy-SERVER-1.0.0/server/conf/platform-windows.conf
+
+
+|more| Welche konkreten Apache Module benötigt werden erfahren Sie im Kapitel
+:ref:`Anforderungen <anforderungen>`.
+
+
+Proxy-Umgebung einrichten (optional)
+------------------------------------
+
+.. note::
+
+   Dieser Schritt ist optional.
+
+Befindet sich der InteProxy Server im Intranet und Anfragen müssen nach außen
+durch eine Firewall über einen Proxy geleitet werden, muss der Proxy in der
+Datei :file:`/opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy.conf`
+eingetragen werden.
+
+.. code-block:: apache
+
+   ProxyRemote * http://intranet.proxy:8080
+
+|more| Weitere Informationen zur Proxy Konfiguration erhalten Sie im Kapitel
+:ref:`ProxyRemote Unterstützung <proxy>`.
+
+
+
+Schritt 4: InteProxy Server starten
+===================================
+
+.. note::
+
+   Unter Debian muss vor einem Neuladen der Apache Konfiguration der InteProxy
+   Server VirtualHost aktiviert werden.
+
+   .. code-block:: bash
+
+      a2ensite inteproxy.conf
+
+Laden Sie die Konfigurationen des Apache HTTP Server neu.
+
+.. code-block:: bash
+
+  /etc/init.d/apache2 reload
+
+
+Schritt 5: Installation testen
+==============================
+
+Für einen einfachen Test, rufen Sie die folgenden URL (bsp. in einem Browser)
+auf:
+
+.. code-block:: bash
+
+   http://<servername>:64609/inteproxy-demo.intevation.org/cgi-bin/frida-wms?Request=GetCapabilities&Service=WMS&Version=1.1.0
+
+Erhalten Sie ein Capabilities Dokument des abgesicherten WMS Dienstes haben Sie
+den InterProxy Server erfolgreich installiert. Herzlichen Glückwunsch! Sie
+können nun weitere abgesicherte OGC Web Services hinzufügen.
+
+|more| Weitere Erläuterungen zum Testen des InteProxy Server befindet sich im
+Kapitel :ref:`Testen von InteProxy Server <test>`
+
+
+
+Schritt 6: Einrichtung weitere abgesicherten OGC Web Services
+=============================================================
+
+|more| Wie Sie weitere abgesicherte OGC Web Services hinzufügen können
+erfahren Sie im Kapitel :ref:`Einrichtung weiterer abgesicherter OGC Web
+Services <weiterer>`.
+
+.. |more| image:: images/more.png
+          :align: middle
+          :alt: mehr Infos

Added: trunk/server/doc/source/images/more.png
===================================================================
(Binary files differ)


Property changes on: trunk/server/doc/source/images/more.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: trunk/server/doc/source/index.rst
===================================================================
--- trunk/server/doc/source/index.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/index.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -10,16 +10,15 @@
    :maxdepth: 2
 
    einfuehrung.rst
+   gettingStarted.rst
+   installApache.rst
    download.rst
-   anforderungen.rst
-   installationDebian.rst
-   installationSUSE.rst
-   installationWindowsServer2003.rst
    konfigurationsdateiVirtualHost.rst
-   konfigurationsdateiInteProxy.rst
    proxyRemote.rst
-   URLrewriting.rst
    ersterTest.rst
+   konfigurationsdateiInteProxy.rst
+   anforderungen.rst
+.. URLrewriting.rst
    linkliste.rst
 .. versionsgeschichte.rst
 

Added: trunk/server/doc/source/installApache.rst
===================================================================
--- trunk/server/doc/source/installApache.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/installApache.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -0,0 +1,127 @@
+.. _installApache:
+
+===============================
+Installation Apache HTTP Server
+===============================
+
+Für den Einsatz des InteProxy Servers wird **mindestens** die Version 2.2.15
+des Apache HTTP Servers vorausgesetzt. Für die einzelnen Distributionen wie
+Debian, SuSE oder Windows erhalten Sie in den nachfolgenden Abschnitten
+detailierte Hinweise zur Installation des Apache HTTP Servers.
+
+Debian
+======
+
+Für den Einsatz des InteProxy Servers unter Debian wird die Version 6.0 (Debian
+Squeeze) empfohlen.
+
+Zum Installieren des Apache HTTP Server über die Kommandozeilen, führen Sie den
+folgenden Befehl aus:
+
+.. code-block:: bash
+
+   apt-get install apache2
+
+.. note:: 
+   
+    Für den Einsatz unter Debian Lenny (Version 5.0) ist der Apache HTTP
+    Server aus Debian Lenny Backports zu installieren.
+
+TODO: Einrichten Debian Lenny Backports beschreiben.
+
+
+
+SuSE
+====
+
+SUSE Linux Enterprise Server 11
+-------------------------------
+
+Für den Einsatz des InteProxy Servers unter SUSE Linux Enterprise Server 11
+ist die Installation des aktuellen Apache Paketes aus dem ``Up-to-date Apache
+packages (SLE_11)`` Repository erforderlich.
+
+Fügen Sie das ``Apache.repo`` mit Hilfe des Kommandozeilenwerkzeugs ``zypper``
+der Paketverwaltung wie folgt hinzu:
+
+.. code-block:: bash
+
+   zypper ar http://download.opensuse.org/repositories/Apache/SLE_11/ "Apache.repo"
+
+Die Pakete des ``Apache.repo`` sind mit einem Schlüssel signiert
+worden. Fügen Sie diesen Schlüssel - nach einer Verifizierung der Korrektheit
+des Schlüssels - mit folgendem Befehl hinzu:
+
+.. code-block:: bash
+
+  curl -O http://download.opensuse.org/repositories/Apache/SLE_11/repodata/repomd.xml.key
+  rpm --import repomd.xml.key
+
+
+Installieren Sie den Apache HTTP Server:
+
+.. code-block:: bash
+
+   zypper install apache2
+
+
+SUSE Linux Enterprise Server 10
+-------------------------------
+
+Für den Einsatz des InteProxy Servers unter SUSE Linux Enterprise Server 10
+ist die Installation des aktuellen Apache Paketes aus dem ``Up-to-date Apache
+packages (SLE_10)`` Repository erforderlich.
+
+Fügen Sie das ``Apache.repo`` mit Hilfe des Kommandozeilenwerkzeugs ``zypper``
+der Paketverwaltung wie folgt hinzu:
+
+.. code-block:: bash
+
+   zypper ar http://download.opensuse.org/repositories/Apache/SLE_10/ "Apache.repo"
+
+Die Pakete des ``Apache.repo`` sind mit einem Schlüssel signiert
+worden. Fügen Sie diesen Schlüssel - nach einer Verifizierung der Korrektheit
+des Schlüssels - mit folgendem Befehl hinzu::
+
+  curl -O http://download.opensuse.org/repositories/Apache/SLE_10/repodata/repomd.xml.key
+  rpm --import repomd.xml.key
+
+
+Installieren Sie den Apache HTTP Server:
+
+.. code-block:: bash
+
+   zypper install apache2
+
+
+
+OpenSUSE
+--------
+
+Für den Einsatz des InteProxy Servers unter OpenSUSE ist mindestens die Version
+11.3 erforderlich.  Ältere OpenSUSE Versionen werden nicht unterstützt. 
+
+Installieren Sie den Apache HTTP Server mit Hilfe des
+Kommandozeilenwerkzeugs ``zypper``:
+
+.. code-block:: bash
+
+   zypper install apache2
+
+
+Windows Server 2003 / 2008
+==========================
+
+Für den Einsatz des InteProxy Servers unter Windows Server wird ein aktueller
+Apache HTTP Server mit SSL Unterstützung benötigt. Diesen können Sie auf der
+Seite `Downloading the Apache HTTP Server
+<http://httpd.apache.org/download.cgi>`_ des Apache HTTP Server Projekts
+herunterladen.
+
+.. note::
+   Es wird das MSI-Paket ``Win32 Binary including OpenSSL`` benötigt.
+
+Installieren Sie den Apache HTTP Server mit Hilfe des Windows
+Installers. Weitere Informationen zur Installation des Apache HTTP Server
+finden Sie in der Apache Dokumentation `Using Apache with Microsoft
+Windows <http://httpd.apache.org/docs/2.2/platform/windows.html>`_.

Modified: trunk/server/doc/source/konfigurationsdateiInteProxy.rst
===================================================================
--- trunk/server/doc/source/konfigurationsdateiInteProxy.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/konfigurationsdateiInteProxy.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -1,31 +1,39 @@
-=================================
-Konfigurationsdatei inteproxy.cfg
-=================================
+.. _weiterer: 
 
-Die Konfiguration der OWS-Proxydienste erfolgt über eine Konfigurationsdatei.
-Werden darin keine OWS-Dienste angegeben, verhält sich InteProxy Server wie
+===================================================
+Einrichtung weiterer abgesicherter OGC Web Services
+===================================================
+
+Die Einrichtung weiterer abgesicherter OGC Web Services kann auf zwei
+unterschiedlichen Wege durchgeführt werden. Automatisiert durch das
+Python-Skript ``create-rewrite-rules.py`` und die Verwendung der InteProxy
+Server Konfigurationsdatei :file:`inteproxy.cfg` oder durch die manuelle
+Erstellung der Datei :file:`inteproxy-rewrite.conf`.
+
+.. _inteproxy.cfg:
+
+Verwendung von inteproxy.cfg
+============================
+
+Die automatisierte Einrichtung weitere abgesicherter OGC  Web Services erfolgt
+über die Konfigurationsdatei :file:`/opt/InteProxy-SERVER-1.0.3/inteproxy.cfg`.
+Werden darin keine OWS-Dienste angegeben, verhält sich der InteProxy Server wie
 ein normaler transparenter HTTP-Proxy.
-Dem Quelltext liegt eine beispielhafte Konfigurationsdatei ``inteproxy.cfg``
-bei. Die Konfigurationsdatei beinhaltet die Services, die als OWS-Proxies
-fungieren. 
-Bevor der InteProxy Server gestartet wird, muss die Konfigurationsdatei
-``inteproxy.cfg`` mit dem Skript ``create-rewrite-rules.py`` in `Apache
-RewriteRule Direktiven
-<http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule>`_
-umgewandelt werden. ::
 
- ./create-rewrite-rules.py --config-file=inteproxy.cfg -o \
- server/conf/inteproxy-rewrite.conf
+Dem InteProxy Server Installationspaket liegt eine beispielhafte
+Konfigurationsdatei ``inteproxy.cfg`` bei. In die Konfigurationsdatei können
+abgesicherte OGC Web Services, welche als OWS-Proxies fungieren, eingetragen
+werden. 
 
-Wird beim Starten von InteProxy Server keine Konfigurationsdatei angegeben,
-wird nach der Datei ``inteproxy.cfg`` im InteProxy Server-Hauptverzeichnis
-gesucht. Die Konfigurationsdatei legt darüber hinaus auch fest, ob eine
-Anmeldung gegen einen Proxy im internen Netzwerk  nötig ist, um Dienste zu
-erreichen. Dazu müssen die Abschnitte ``[inteproxy]`` und
-``[http_proxy_authentification]`` auskommentiert und angepasst werden.
-Eine beispielhafte Konfigurationsdatei ist die Datei ``inteproxy.cfg``, die den
-Server ``inteproxy-demo.intevation.org`` als OWSProxy eingetragen hat.
+Für den Betrieb von InteProxy Server und der Einrichtung weiterer abgesicherter
+OGC Web Services muss ausschließlich der Haupt-Abschnitt der Absicherungsregeln
+``[inteproxy-rules]`` angepasst werden.
 
+In dem folgendem Block ist eine beispielhafte Konfigurationsdatei
+``inteproxy.cfg`` beschrieben, in welcher im Haupt-Abschnitt der
+Absicherungsregeln ``[inteproxy-rules]`` der abgesicherte OGC Web Service
+``inteproxy-demo.intevation.org`` als OWSProxy eingetragen ist.
+
 .. code-block:: bash 
 
   # Demo configuration inteproxy.cfg for InteProxy Desktop.
@@ -104,3 +112,121 @@
   [inteproxy-rules]
   urls=owsproxy://meier:meier@inteproxy-demo.intevation.org/cgi-bin/frida-wms
        owsproxy://USERNAME:PASSWORT@www.geobasisdaten.niedersachsen.de/mapgate/*
+
+Ausführen von create-rewrite-rules.py
+-------------------------------------
+
+Die Konfigurationsdatei :file:`inteproxy.cfg` muss mit Hilfe des Python-Skriptes
+``create-rewrite-rules.py`` in `Apache RewriteRule Direktiven
+<http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule>`_
+umgewandelt. Ergebnis der Umwandlung ist die Datei
+:file:`inteproxy-rewrite.conf`. 
+
+|more| Informationen zu der Datei finden Sie im Abschnitt
+:ref:`inteproxy-rewrite.conf <inteproxy-rewrite>`.
+
+Der folgende Beispielaufruf zeigt die
+Erstellung der Datei :file:`inteproxy-rewrite.conf`:
+
+.. code-block:: bash
+
+ ./create-rewrite-rules.py --config-file=inteproxy.cfg \
+ --server-prefix=http://<servername>:64609 \
+ --output-file=server/conf/inteproxy-rewrite.conf
+
+.. note:: 
+
+   Nach Erstellung der Datei :file:`inteproxy-rewrite.conf` muss der
+   Apache HTTP Server die Konfigurationsdateien neu laden.
+
+   .. code-block:: bash
+
+      /etc/init.d/apache2 reload
+
+Wird beim Ausführen des Python-Skriptes ``create-rewrite-rules.py`` keine
+Konfigurationsdatei angegeben, wird nach der Datei ``inteproxy.cfg`` im
+InteProxy Server-Hauptverzeichnis gesucht.
+
+Hilfe zur Ausführung erhalten Sie durch den folgenden Aufruf auf der Kommandozeile:
+
+.. code-block:: bash
+
+  ./create-rewrite-rules.py -h
+
+.. _inteproxy-rewrite:
+
+inteproxy-rewrite.conf
+======================
+
+Die Datei :file:`inteproxy-rewrite.conf` kann manuell erstellt oder wie im
+Kapitel :ref:`Verwendung von inteproxy.cfg <inteproxy.cfg>` beschrieben
+automatisch werden.
+
+Im folgenden Block wird die beispielhafte Datei
+:file:`/opt/InteProxy-1.0.3/server/conf/inteproxy-rewrite.conf` erläutert und
+Hinweise zur Benutzung der verwendeten Apache Direktiven gegeben.
+
+.. code-block:: apacheconf
+
+ RewriteRule ^/inteproxy\-demo\.intevation\.org\/cgi\-bin\/frida\-wms$ https:/$0?user=meier&password=meier [QSA,P]
+ RewriteRule ^/www\.geobasisdaten\.niedersachsen\.de\/mapgate\/.*$ https:/$0?user=USERNAME&password=PASSWORT [QSA,P]
+ Substitute s!https?://(inteproxy\055demo\.intevation\.org\/cgi\055bin\/frida\055wms|www\.geobasisdaten\.niedersachsen\.de\/mapgate\/)!http://SERVERNAME:64609/$1!
+
+.. warning::
+
+   Die Datei ``inteproxy-rewrite.conf`` darf in der Zeile RewriteRule **keine**
+   Zeilenbrüche aufweisen. Die Zeilenbrüche dienen nur zur besseren Lesbarkeit.
+
+Direktive Rewrite Rule
+----------------------
+
+Die Direktive RewriteRule definiert die eigentliche Umleitung. Die Direktive
+kann mehrmals vorkommen, dabei ergibt jedes Vorkommnis eine eigene Umleitung.
+Die Reihenfolge der Umleitungen ist wichtig, da diese in der Reihenfolge des
+Vorkommens angewendet werden.
+
+Die Direktive RewriteRule erwartet als Parameter:
+
+  1. **Ausdruck** - beschreibt die URLs, die umgeleitet werden sollen
+  2. **Umleitung** - gibt die Umleitung an
+
+**Ausdruck** beschreibt die URLs, die umgeleitet werden. Es ist ein
+Perl-kompatibler Regulärer Ausdruck (ohne Begrenzerzeichen, '/').  Vor dem
+Ausdruck kann zusätzlich ein Ausrufezeichen ('!') stehen, um den Regulären
+Ausdruck zu negieren.
+
+**Umleitung** ist die URL, auf die umgeleitet wird, wenn der Ausdruck
+zutrifft.  
+
+Am Ende der RewriteRule können Sie noch optional einige weitere Optionen
+angeben, welche das Verhalten von mod_rewrite steuern, falls die RewriteRule
+zutrifft. Diese werden in spitzen Klammern ([ bzw. ]) notiert.  Wenn Sie
+mehrere angeben, trennen Sie diese durch Kommata. Folgende Optionen werden in
+der InteProxy-RewriteRule-Datei verwendet:
+
+ * **QSA** Diese Option müssen Sie angeben, wenn Sie an die Umleitung manuell einen neuen Query-String hängen und den alten dabei nicht komplett ersetzen wollen.
+ * **P**  Diese Option sorgt dafür, dass ein Zugriff von dem Apache-Modul mod_proxy aus auf die URL erfolgt. Dazu muss mod_proxy aktiviert und die URL muss valide sein (sie muss unter anderem auf jeden Fall mit http://hostname beginnen).
+
+Weitere Informationen finden Sie in der Apache Dokumentation `URL Rewriting
+Guide <http://httpd.apache.org/docs/2.0/misc/rewriteguide.html>`_ und in der
+Dokumentation SELFHTML `Umleitungen mit mod_rewrite
+<http://de.selfhtml.org/servercgi/server/rewrite.htm>`_.
+
+Direktive Subsitute
+-------------------
+
+Die Substitute Direktive definiert ein Such- und ein Ersetzungs-Pattern welche
+auf den Response Body angewendet wird. Die Syntax ist dabei wie folgt:
+
+.. code-block:: apacheconf
+
+   Substitute s!Suchtext!Ersetzungstext!
+
+Dabei können sowohl reguläre Ausdrücke als auch einfache Text-Ersetzungen
+verwendet werden. Der InteproxyServer verwendet reguläre Ausdrücke in der
+Substitute Direktive.
+
+
+.. |more| image:: images/more.png
+          :align: middle
+          :alt: mehr Infos

Modified: trunk/server/doc/source/konfigurationsdateiVirtualHost.rst
===================================================================
--- trunk/server/doc/source/konfigurationsdateiVirtualHost.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/konfigurationsdateiVirtualHost.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -1,32 +1,17 @@
+.. _vhost:
+
 ===============================
 VirtualHost Konfigurationsdatei
 ===============================
-Um den InteProxy Server als Virtuellen Host hinzufügen, kopieren Sie die
-kommentierte Vorlage ``inteproxy.conf`` nach
-``/etc/apache2/sites-available/`` für die Debian Distribution und für die
-openSuSE Distribution nach ``/etc/apache2/vhosts.d``.  Die VirtualHost Konfigurationsdatei
-``inteproxy.conf`` übernimmt einiges an Automation. So erfolgt das Laden der
-benötigten Apache-Module plattform-spezifisch  durch die Zeile ``Include
-/opt/InteProxy-SERVER-1.0.3/server/conf/platform-debian.conf`` für die Debian Distribution
-**oder** durch die Zeile ``Include
-/opt/InteProxy-SERVER-1.0.3/server/conf/platform-suse.conf`` für die openSuSE
-Distribution. Sollten Sie die Apache-Module bereits geladen haben, können Sie die
-Zeile einkommentieren.
 
-Die benötigen Apache-Module lassen sich bei Bedarf mit dem Befehl ``a2enmod`` manuell laden.::
+Der InterProxy Server wird als separater `VirtualHost
+<http://httpd.apache.org/docs/2.2/mod/core.html#virtualhost>`_ betrieben, die
+Konfiguration des VirtualHost erfolgt in der Datei
+:file:`/opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy.conf`.
 
- a2enmod authz_host proxy proxy_http rewrite ssl
- 
-Werden die Apache-Module nicht mehr benötigt, können diese manuell mit dem
-Befehl ``a2dismod`` entfernt werden. ::
+Die Inhalte der Datei :file:`inteproxy.conf` werden in dem folgenden Block
+erläutert.
 
- a2dismod authz_host proxy proxy_http rewrite ssl
- 
-**Hinweis:** Sollten die oben genannten Apache-Module entfernt werden, läuft der
-InteProxy Server nicht mehr.
-
-Die VirtualHost Konfigurationsdatei ``inteproxy.conf`` 
-
 .. code-block:: apacheconf
 
   <VirtualHost *:64609>
@@ -35,16 +20,39 @@
   DocumentRoot /opt/InteProxy-SERVER-1.0.3/server
   
   TransferLog /opt/InteProxy-SERVER-1.0.3/server/logs/access_log
+
+  # ZWINGEND ERFORDERLICH! Benötigte Module laden. 
+  # Zum Laden der benötigten Apache Module entfernen Sie den Kommentar
+  # vor der Include-Zeile welche Ihrer Distribution entspricht! 
+
+  ## Apache Module für SuSE
+  #Include /opt/InteProxy-SERVER-1.0.0/server/conf/platform-suse.conf
   
-  #Include /opt/InteProxy-SERVER-1.0.3/server/conf/platform-suse.conf
-  Include /opt/InteProxy-SERVER-1.0.3/server/conf/platform-debian.conf
+  ## Apache Module für Debian
+  #Include /opt/InteProxy-SERVER-1.0.0/server/conf/platform-debian.conf
+  
+  ## Apache Module für Windows Server
+  #Include /opt/InteProxy-SERVER-1.0.0/server/conf/platform-windows.conf
+
   RewriteEngine On
   # RewriteLogLevel 0
   RewriteLog /opt/InteProxy-SERVER-1.0.3/server/logs/rewrite.log
+
+  # Die Direktive filter chain definiert eine Filter-Kette zum Umschreiben der
+  # URLs in einem WMS Capabilities Dokument.  WMS Capabilities Dokumente haben
+  # den Content-Type type application/vnd.ogc.wms_xml.  Der Schrägstrich in dem
+  # Content-Type  Feld muss als oktales Maskierungszeichen \057 geschrieben, da
+  # der Schrägstrich als Trenner im Regulären Ausdruck verwendet wird.
+
+  FilterProvider gzinflate INFLATE resp=Content-Encoding $gzip
+  FilterProvider fixurls SUBSTITUTE Content-Type "/(application\057vnd.ogc.wms_xml|text\057xml)($|;)/"
+  FilterProvider gzdeflate DEFLATE Content-Type "/(application\057vnd.ogc.wms_xml|text\057xml)($|;)/"
+  FilterChain +gzinflate +fixurls +gzdeflate
   
   # Die Datei conf/inteproxy-rewrite.conf beinhaltet die RewriteRules für die
   # aktuelle InteProxy Funktionalität. Sollte die Datei nicht existieren, lesen
   # Sie im Kapitel 6 wie Sie eine erstellen können.
+
   Include /opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy-rewrite.conf
   
   # Die Direktive Deny bestimmt, welche Hosts beziehungsweise Netzwerke vom
@@ -54,20 +62,18 @@
   # Grundsätzlich darf kein Host auf die Inhalte des InteProxy Servers
   # Kontextes zugreifen, in dem die Direktive definiert ist. Niemand darf auf
   # URLs zugreifen, die mit / beginnen.
+
   <Directory />
    Order Deny,Allow
    Deny from All
   </Directory>
   
-  
-  
   # SSL Konfiguration.  
   # SSLProxyEngine muss eingeschaltet sein, damit https-Verbindungen zu anderen
   # Rechner möglich sind.
+
   SSLProxyEngine on
-  
   SSLProtocol all -SSLv2
   SSLCipherSuite HIGH:MEDIUM:!ADH
   
-  
   </VirtualHost>

Modified: trunk/server/doc/source/proxyRemote.rst
===================================================================
--- trunk/server/doc/source/proxyRemote.rst	2011-04-08 12:04:43 UTC (rev 301)
+++ trunk/server/doc/source/proxyRemote.rst	2011-05-25 15:22:54 UTC (rev 302)
@@ -4,34 +4,44 @@
 
 Sollen Anfragen über einen Apache Proxy Server, welcher sich im Intranet
 befindet, nach außen durch eine Firewall geleitet werden, kann hier zu die
-Konfigurationsdirektive `ProxyRemote <http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxyremote>`_ verwendet
-werden. `ProxyRemote` benötigt das Apache-Module `mod_proxy <http://httpd.apache.org/docs/2.2/mod/mod_proxy.html>`_.
+Konfigurationsdirektive `ProxyRemote
+<http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxyremote>`_ verwendet
+werden. `ProxyRemote` benötigt das Apache-Module `mod_proxy
+<http://httpd.apache.org/docs/2.2/mod/mod_proxy.html>`_.
 
 Die Direktive `ProxyRemote` leitet Proxy-Anfragen, die der lokale Proxy empfangen
 hat, an einen anderen Proxy-Server weiter.
-::
 
-     |------------|     |------------- |   
-     | InteProxy  |     | proxy.remote |   
-  -> |  Server    | ->  |  :8080       | ->
-     |------------|     |--------------|   
+.. code-block:: bash
 
+
+     |------------|     |---------------|   
+     | InteProxy  |     | intranet.proxy|   
+  -> |  Server    | ->  |     :8080     | ->
+     |------------|     |---------------|   
+
 Im nachfolgenden Beispiel werden
-alle Proxy-Anfragen an ``proxy.remote.com`` weitergeleitet::
+alle Proxy-Anfragen an ``intranet.proxy:8080`` weitergeleitet::
 
-  ProxyRemote * http://proxy.remote.com:8080
+  ProxyRemote * http://intranet.proxy:8080
 
 - Der erste Parameter ist das URL-Muster der Proxy-Anfragen:  Beginn einer URL
   oder ein * für beliebige URLs. 
 - Der zweite Parameter ist die vollständige URL des Remote-Servers.
 
-Die `ProxyRemote` Konfigurationsdirektive sollte je nach installierter
-Plattform in die VirtualHost
-Konfigurationsdatei ``inteproxy.conf`` oder
-``inteproxy-WindowsServer2003.conf`` eingetragen werden. Nach erfolgter
-Anpassung sollte der Apache HTTP Server neu gestartet werden.
+Die `ProxyRemote` Konfigurationsdirektive muss in der Datei
+:file:`/opt/InteProxy-SERVER-1.0.3/server/conf/inteproxy.conf` eingetragen
+werden.
 
-**Hinweis**: Für eine die ``HTTPS_upstream-proxy`` Unterstützung benötigen Sie
-einen Apache Server ab Version 2.2.15 (vgl. Kapitel :ref:`anforderungen`)!
-Eine Proxy Authentifizierung wird zur
-Zeit noch nicht unterstützt.
+Nach erfolgter Anpassung müssen der Apache HTTP Server die Konfigurationen neu
+laden:
+
+.. code-block:: bash
+
+   /etc/init.d/apache2 reload
+
+.. note::
+
+   Für eine die ``HTTPS_upstream-proxy`` Unterstützung benötigen Sie einen
+   Apache Server ab Version 2.2.15 (vgl. Kapitel :ref:`anforderungen`)!  Eine
+   Proxy Authentifizierung wird zur Zeit noch nicht unterstützt.



More information about the Inteproxy-commits mailing list