Integration des IES in den Apache: Unterschied zwischen den Versionen

Aus SiteparkWiki
Zur Navigation springen Zur Suche springen
K
Zeile 6: Zeile 6:
 
Für die optionale Integration des [[IES]] in den Apache Webserver empfehlen wird das Apache-Modul <code>proxy_ajp</code>. Folgende Konfiguration kann als Vorlage dienen. Die <code>ProxyPassMatch</code> Anweisungen sind jedoch erst ab der Version 2.2.5 verfügbar.
 
Für die optionale Integration des [[IES]] in den Apache Webserver empfehlen wird das Apache-Modul <code>proxy_ajp</code>. Folgende Konfiguration kann als Vorlage dienen. Die <code>ProxyPassMatch</code> Anweisungen sind jedoch erst ab der Version 2.2.5 verfügbar.
  
<source lang="text">
+
Da Passwörter und andere Vertrauliche Daten mit dem [[IES]] ausgetauscht werden, sollte auch immer '''HTTPS''' für den Apache eingerichtet werden.
###################################
+
 
# IES integration using mod_proxy #
+
=== IES Apache-Konfiguration ===
###################################
+
 
 +
Für die Integration des IES in den Apache sollte ein eigener Virtueller Host eingerichtet werden. Für diesen Virtueller Host ist '''kein''' DocumentRoot notwendig!
 +
 
 +
<source lang="apache">
 +
<VirtualHost *:80>
 +
 
 +
    ServerName ies.sitepark.com
 +
 
 +
    ErrorLog        /var/log/apache2/ies.sitepark.com.err
 +
    CustomLog      /var/log/apache2/ies.sitepark.com.log combined
 +
 
 +
    # Infosite redirect
 +
    RewriteEngine On
 +
    RewriteRule ^/$ /ies/infosite/ [R,L]
 +
 
 +
 
 +
    ###################################
 +
    # IES integration using mod_proxy #
 +
    ###################################
 +
 
 +
    # security
 +
    ProxyRequests Off
 +
 
 +
    # always keep the host header
 +
    ProxyPreserveHost On
 +
 
 +
    # timeout
 +
    ProxyTimeout 3600
 +
 
 +
    # load balancer
 +
    <Proxy balancer://ies-balancer>
 +
        Order Deny,Allow
 +
        Allow from All
 +
        BalancerMember http://localhost:8080 timeout=3600 retry=0
 +
    </Proxy>
 +
 
 +
    ProxyPassMatch ^(/.*\.spml(;jsessionid=\w+)?(\?.*)?)$    balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 +
    ProxyPassMatch ^(/ies/.*)$                              balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 +
    ProxyPassMatch ^(/jslibs/.*)$                            balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 +
    ProxyPassMatch ^(/infosite-webdav/.*)$                  balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 +
    ProxyPassMatch ^(/xip/.*)$                              balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 +
    ProxyPassMatch ^(/infosite/.*)$                          balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 +
 
 +
</VirtualHost>
 +
</source>
 +
 
 +
 
 +
=== Apache-Konfiguration für Publikationsbereiche mit Live-Komponenten===
 +
Publikationsbereiche des IES die Live-Komponenten verwenden und somit auf den IES zugreifen müssen, werden wie folgt konfiguriert.
 +
 
 +
<source lang="apache">
 +
<VirtualHost *:80>
 +
 
 +
    ServerName ...
 +
    DocumentRoot ...
 +
 +
    ErrorLog        ...
 +
    CustomLog      ...
 +
 
 +
    ...
 +
 
 +
    ###################################
 +
    # IES integration using mod_proxy #
 +
    ###################################
 +
 
 +
    # security
 +
    ProxyRequests Off
 +
 
 +
    # always keep the host header
 +
    ProxyPreserveHost On
 +
 
 +
    # timeout
 +
    ProxyTimeout 3600
 +
 
 +
    # load balancer
 +
    <Proxy balancer://ies-balancer>
 +
        Order Deny,Allow
 +
        Allow from All
 +
        BalancerMember http://<<cms-host>>:8080 timeout=3600 retry=0
 +
    </Proxy>
  
# security
+
    ProxyPassMatch ^(/.*\.spml(;jsessionid=\w+)?(\?.*)?)$    balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
ProxyRequests Off
+
    ProxyPassMatch ^(/ies/binary/.*)$                        balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 +
    ProxyPassMatch ^(/infosite/.*)$                          balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
  
# always keep the host header
 
ProxyPreserveHost On
 
  
# timeout
+
    # Rewrite um die Counter-Aufrufe (unabhaengig von Aliases) an das CMS (mit der konfigurierten Publisher-URL) zu schicken
ProxyTimeout 3600
+
    RewriteEngine on
 +
    RewriteLogLevel 1
 +
    RewriteLog /var/log/apache2/rewrite.log
  
# load balancer
+
    RewriteRule ^/ies/counter(.*) http://<<cms-host>>:8080/ies/infosite/counter$1 [L,NE,P]
<Proxy balancer://ies-balancer>
 
    Order Deny,Allow
 
    Allow from All
 
    BalancerMember http://localhost:8080 timeout=3600 retry=0
 
</Proxy>
 
  
ProxyPassMatch ^(/.*\.spml(;jsessionid=\w+)?(\?.*)?)$    balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
+
</VirtualHost>
ProxyPassMatch ^(/ies/.*)$                              balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 
ProxyPassMatch ^(/jslibs/.*)$                            balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 
ProxyPassMatch ^(/infosite-webdav/.*)$                  balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 
ProxyPassMatch ^(/xip/.*)$                              balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 
ProxyPassMatch ^(/infosite/.*)$                          balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
 
 
</source>
 
</source>
  
 +
 +
<noinclude>
 +
[[Kategorie:Entwicklung]]
 +
[[Kategorie:Produktion]]
 +
[[Kategorie:Administration]]
 +
</noinclude>
 +
 +
 +
=== Apache-Konfiguration Version < 2.2.5 ===
 
Bei älteren Apache-Versionen (< Version 2.2.5) ist unter Umständen statt einer <code>ProxyPassMatch</code> eine <code>RewriteRule</code> einzusetzen:
 
Bei älteren Apache-Versionen (< Version 2.2.5) ist unter Umständen statt einer <code>ProxyPassMatch</code> eine <code>RewriteRule</code> einzusetzen:
  
Zeile 64: Zeile 143:
 
</source>
 
</source>
  
Da Passwörter und andere Vertrauliche Daten mit dem [[IES]] ausgetauscht werden, sollte auch immer '''HTTPS''' für den Apache eingerichtet werden.
+
 
  
 
<noinclude>
 
<noinclude>
 
[[Kategorie:Installation| 300]]
 
[[Kategorie:Installation| 300]]
 
</noinclude>
 
</noinclude>

Version vom 28. Oktober 2009, 11:27 Uhr

Hinweise zur Integration des IES in den Apache

Die Integration des IES in den "Internet Information Server" von Microsoft ist über den sog. JK-Connector prinzipiell möglich. Weitere Informationen hierzu finden Sie im Internet

Grundsätzlich empfehlen wir sowohl unter Linux, wie auch unter Windows den Einsatz des Apache-Webservers, da wir aufgrund unserer Erfahrungen hier den besten Support liefern können.

Für die optionale Integration des IES in den Apache Webserver empfehlen wird das Apache-Modul proxy_ajp. Folgende Konfiguration kann als Vorlage dienen. Die ProxyPassMatch Anweisungen sind jedoch erst ab der Version 2.2.5 verfügbar.

Da Passwörter und andere Vertrauliche Daten mit dem IES ausgetauscht werden, sollte auch immer HTTPS für den Apache eingerichtet werden.

IES Apache-Konfiguration

Für die Integration des IES in den Apache sollte ein eigener Virtueller Host eingerichtet werden. Für diesen Virtueller Host ist kein DocumentRoot notwendig!

<VirtualHost *:80>

    ServerName ies.sitepark.com

    ErrorLog        /var/log/apache2/ies.sitepark.com.err
    CustomLog       /var/log/apache2/ies.sitepark.com.log combined

    # Infosite redirect
    RewriteEngine On
    RewriteRule ^/$ /ies/infosite/ [R,L]


    ###################################
    # IES integration using mod_proxy #
    ###################################

    # security
    ProxyRequests Off

    # always keep the host header
    ProxyPreserveHost On

    # timeout
    ProxyTimeout 3600

    # load balancer
    <Proxy balancer://ies-balancer>
        Order Deny,Allow
        Allow from All
        BalancerMember http://localhost:8080 timeout=3600 retry=0
    </Proxy>

    ProxyPassMatch ^(/.*\.spml(;jsessionid=\w+)?(\?.*)?)$    balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
    ProxyPassMatch ^(/ies/.*)$                               balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
    ProxyPassMatch ^(/jslibs/.*)$                            balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
    ProxyPassMatch ^(/infosite-webdav/.*)$                   balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
    ProxyPassMatch ^(/xip/.*)$                               balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
    ProxyPassMatch ^(/infosite/.*)$                          balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On

</VirtualHost>


Apache-Konfiguration für Publikationsbereiche mit Live-Komponenten

Publikationsbereiche des IES die Live-Komponenten verwenden und somit auf den IES zugreifen müssen, werden wie folgt konfiguriert.

<VirtualHost *:80>

    ServerName ...
    DocumentRoot ...
 
    ErrorLog        ...
    CustomLog       ...

    ...

    ###################################
    # IES integration using mod_proxy #
    ###################################

    # security
    ProxyRequests Off

    # always keep the host header
    ProxyPreserveHost On

    # timeout
    ProxyTimeout 3600

    # load balancer
    <Proxy balancer://ies-balancer>
        Order Deny,Allow
        Allow from All
        BalancerMember http://<<cms-host>>:8080 timeout=3600 retry=0
    </Proxy>

    ProxyPassMatch ^(/.*\.spml(;jsessionid=\w+)?(\?.*)?)$    balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
    ProxyPassMatch ^(/ies/binary/.*)$                        balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On
    ProxyPassMatch ^(/infosite/.*)$                          balancer://ies-balancer$1 stickysession=JSESSIONID nofailover=On


    # Rewrite um die Counter-Aufrufe (unabhaengig von Aliases) an das CMS (mit der konfigurierten Publisher-URL) zu schicken
    RewriteEngine on
    RewriteLogLevel 1
    RewriteLog /var/log/apache2/rewrite.log

    RewriteRule ^/ies/counter(.*) http://<<cms-host>>:8080/ies/infosite/counter$1 [L,NE,P]

</VirtualHost>


Apache-Konfiguration Version < 2.2.5

Bei älteren Apache-Versionen (< Version 2.2.5) ist unter Umständen statt einer ProxyPassMatch eine RewriteRule einzusetzen:

###################################
# IES integration using mod_proxy #
###################################

# security
ProxyRequests Off

# always keep the host header
ProxyPreserveHost On

# timeout
ProxyTimeout 3600

# load balancer
<Proxy balancer://ies-balancer>
    Order Deny,Allow
    Allow from All
    BalancerMember http://localhost:8080 timeout=3600 retry=0
</Proxy>

RewriteEngine On
RewriteRule ^(.*\.spml(;jsessionid=\w+)?(\?.*)?) balancer://ies-balancer$1 [P]
RewriteRule ^(/ies/.*)$ balancer://ies-balancer$1 [P]
RewriteRule ^(/infosite-webdav/.*)$ balancer://ies-balancer$