SCRIPT_NAME unter PHP+FastCGI

Auf mehreren Kundenservern setzen wir aus Sicherheitsgründen PHP unter FastCGI in Kombination mit suEXEC ein, in Anlehnung an diese Doku. Das läuft auch weitestgehend unproblematisch, allerdings stehen SCRIPT_NAME und SCRIPT_FILENAME in diesem Fall nicht auf dem Namen des PHP-Scripts, sondern auf dem des PHP-Interpreters, was einige PHP-Scripts etwas durcheinanderbringt.

Für diejenigen, die das für Bug #19656 halten: Nö. Viel simpler ist es mit dem Aktivieren von cgi.fix_pathinfo in der php.ini gemacht.

vorher:

_SERVER["SCRIPT_FILENAME"] = /var/www/virtual/site174/fcgi-bin/php4-fcgi-starter
_SERVER["SCRIPT_NAME"] = /fcgi-bin/php4-fcgi-starter

nachher:

_SERVER["SCRIPT_FILENAME"] = /var/www/virtual/site174/html/shop/info.php
_SERVER["SCRIPT_NAME"] = /shop/info.php