next up previous contents
Nächste Seite: Anbindung über das FastCGI-Interface Aufwärts: Anbindung an den Apache-Webserver Vorherige Seite: Verwendung von SiteRoot   Inhalt


Anbindung mittels PCGI-Interface

Man kann Zope auch über die CGI-Schnittstelle mit Apache verbinden. Zope bietet dafür ein PCGI-Modul (Persistent Common Gateway Interface) an. Die Beschreibung dafür befindet sich im Zope-Installations-Verzeichnis unter doc/WEBSERVER.txt. Sie beschreibt folgende Schritte:

  1. Zope muss mit Hilfe des Skriptes w_pcgi.py kompiliert werden, dann wird auch das PCGI-Interface mitkompiliert.
  2. Die Datei Zope.cgi muss nun in das cgi-bin-Verzeichnis von Apache kopiert werden. Ein Versuch mit einem symbolischen Link in das Zope-Verzeichnis scheiterte.
  3. Apache muss die Ausführung von CGI's erlauben. In der httpd.conf muss dazu folgendes eingetragen werden (falls nicht sowieso schon enthalten)28:

    [frame=none]
      ScriptAlias /cgi-bin/ /var/www/cgi-bin/
      <Location /cgi-bin>
              Options +ExecCGI -Includes
    	  SetHandler cgi-script
      </Location>
    

  4. Beim Start von Zope wird die Option -p /var/www/cgi-bin/Zope.cgi mit angehängt.

Prinzipiell lässt sich Zope nach einem Neustart von Apache bereits jetzt über die Adresse http://rechnername/cgi-bin/Zope.cgi aufrufen und das Webangebot nutzen. In diesem Stadium kann man sich aber nicht in das ZMI einloggen, da Apache den HTTP-Benutzer-Authentifikation nicht korrekt an Zope weiterleitet.

Damit auch die Benutzer-Anmeldung richtig funktioniert, muss die Konfiguration in httpd.conf nochmals ergänzt werden:

 
# Zope configuration maps /Zope/ to the Zope.cgi CGI script
RewriteEngine on
RewriteCond %{HTTP:Authorization}  ^(.*)
RewriteRule ^/Zope(.*) /var/www/cgi-bin/Zope.cgi/$1  \
                [e=HTTP_CGI_AUTHORIZATION:%1, \
                t=application/x-httpd-cgi,l]
Die drei letzten Zeilen müssen (ohne den Backslash) in eine Zeile geschrieben werden. Diese Konfiguration benötigt das Apache-Modul mod_rewrite. Nun steht der Zope-Bereich (ähnlich wie in Kapitel 5.6.1) unter http://rechnername/Zope zur Verfügung. Die dort erwähnten Pfad-Probleme tauchen in dieser Variante nicht auf.


next up previous contents
Nächste Seite: Anbindung über das FastCGI-Interface Aufwärts: Anbindung an den Apache-Webserver Vorherige Seite: Verwendung von SiteRoot   Inhalt
Reinhard Holler 2003-04-12