dedlfix: path_info von $_SERVER

Beitrag lesen

Hi!

Allerdings werden solchen URLs natürlich nur vom Client benutzt, der Webserver übersetzt die URL dann entsprechend (in etwas wie
http://www.example.com/php/path_info.php?path=/some/stuff&foo=bar) - deswegen "client-provided".

Das ist zwar die vermutlich am häufigsten anzutreffende/beschriebene Methode, aber dieses Umschreiben ist nicht immer notwendig und möglich. mod_rewrite kann nämlich nur recht starre Regeln umsetzen. Schon wenn man beliebig viele Path-Teile verwenden möchte, scheitert man damit, sie auf einzelne Variablen verteilen zu wollen. Auch eine variablen Anzahl mit festgelegter Obergrenze ist umständlich, weil das je eine RewriteRule pro Parameteranzahl benötigt. Stattdessen kann und muss man $_SERVER['PATH_INFO'] (in manchen Fällen auch $_SERVER['REQUEST_URI']) selbständig auswerten.

Lo!