Ich bemerkte, manchmal, dass (vor allem, wenn mod_rewrite nicht verfügbar ist) dieser Weg Schema verwendet wird:Wie zuverlässig sind URIs wie /index.php/seo_path
http://host/path/index.php/clean_url_here
--------------------------^
Diese scheint zu arbeiten, zumindest in Apache, wo index.php
aufgerufen wird, und man kann den /clean_url_here
Teil über $_SERVER['PATH_INFO']
abfragen. PHP sogar kind of advertises diese Funktion. Beispielsweise verwendet das CodeIgniter Framework diese Technik als Standard für ihre URLs.
Die Frage: Wie zuverlässig ist die Technik? Gibt es Situationen, in denen Apache nicht index.php
aufruft, aber versucht, den Pfad aufzulösen? Was ist mit lighttpd, nginx, IIS, AOLServer?
Eine ServerFault-Frage? Ich denke, es hat mehr mit der Verwendung dieser Funktion in PHP-Code zu tun. Deshalb frage ich hier.
Nachtrag: Wie von VolkerK vorgeschlagen, ist eine sinnvolle Erweiterung dieser Frage: Wie kann ein Programmierer die Existenz von $_SERVER['PATH_INFO']
auf verschiedenen Servertypen beeinflussen?
Danke für die Apache und IIS Links. Nach ein bisschen Googeln (basierend auf dem neu gewonnenen Wissen über AcceptPathInfo), fand ich auch eine Lösung für nginx: http://kbeezie.com/view/php-self-path-nginx/ – Boldewyn