Schritt 1: Man definiert ein Verzeichnis als CGI Verzeichnis:
<Directory /home/www/servers/phplib.shonline.de/cgi/> Options ExecCGI AllowOverride None </Directory>
Hier wird das Verzeichnis /home/www/.../cgi als Verzeichnis zur Ausführung von CGI-Dateien gekennzeichnet, indem für das Verzeichnis das ExecCGI Attribut gesetzt wird.
Schritt 2: Man definiert für dieses Verzeichnis eine URL
ScriptAlias /cgi/ /home/www/servers/phplib.shonline.de/cgi/
Die URL /cgi/ wird jetzt auf dieses Verzeichnis /home/www/.../cgi/ abgebildet.
Man kann jetzt in diesem Verzeichnis eine ausführbare Datei (etwa ein Shellscript) ablegen, die den folgenden Text ausgibt, wenn man sie startet.
Content-Type: text/plain Hallo, Welt.
Wenn man diese Datei unter der URL http://meinserver.de/cgi/name_des-scripts aufruft, muss man den Text "Hallo, Welt." angezeigt bekommen. Gelingt dies nicht, sollte man durch das Error Log toben und nachsehen, was dort schiefgeht.
Schritt 3: Man installiert den PHP-Interpreter im CGI-Verzeichnis und prüft, ob man ihn als CGI-Programm aufrufen kann. Dazu ist der Interpreter nach /home/www/.../cgi zu kopieren und dann unter der URL http://.../cgi/php oder http://.../cgi/php.exe oder wie immer der Interpreter heißt aufzurufen.
Dabei muss die folgende Fehlermeldung kommen:
Security Alert! PHP CGI cannot be accessed directly. This PHP CGI binary was compiled with force-cgi-redirect enabled. This means that a page will only be served up if the REDIRECT_STATUS CGI variable is set. This variable is set, for example, by Apache's Action directive redirect.
Kommt die Meldung nicht, ist das PHP-Binary unsicher und sollte durch ein korrekt kompiliertes Binary ersetzt werden.
Schritt 4: Man definiert eine Scriptaktion, die das o.a. Binary startet und definiert eine Endung, die durch diese Aktion abgehandelt wird:
Action php-script /cgi/php
teilt dem Apache mit, dass der interne MIME-Typ php-script durch die URL /cgi/php (oder wie immer die URL zum Aufruf des PHP-Interpreters aus Schritt 3 heißt) abgehandelt wird. Der MIME-Typ php-script ist illegal und das ist gut so, denn er wird nur innerhalb von Apache verwendet (er darf nur innerhalb von Apache verwendet werden!).
AddHandler php-script .php
teilt Apache weiterhin mit, dass die Endung .php durch den MIME-Handler für den MIME-Type php-script abgehandelt wird.






