Thoralf Knuth: Addresszeile via PHP auslesen?

Beitrag lesen

Hallo,

Hübsch erzählt, prinzipiell in Ordnung, und doch gestatte ich mir einen kleinen Einwurf.
Wenn man den Apachen als Webserver hat, liefert dieser unter anderem auch REQUEST_URI. Das ist das, was der Client anfordert. Auch wenn der Apache mit mod_rewrite oder anders Umschreibungen vornimmt und dem PHP-Script erzählt, es wäre anders aufgerufen worden, kann man darin immer noch den Original-Wunsch des Client ablesen.

Was machst Du, wenn in der Adresszeile javascript:self.location='http://www.example.org/?abc#def' steht? Von dem JS-Gesumse kriegt der Server und auch PHP nix mit. Genausowenig vom Anker. Er kriegt auch als Request_URI nur den Uniform Resource Identifier der konkreten Request mit. Und von dem (ohne das beim OP offenbar noch fehlende Hintergrundwissen) auf die Adressleiste zu schließen, halte ich für gefährlich und falsch.

Das mit der Adresszeile war vielleicht auch nur so dahergesagt, weil es das offensichtlichste war, und der besser beschreibende Begriff "angeforderte URL" grad nicht bekannt war.

Wenn man die Frage so interpretiert, hast Du natürlich recht. Dann sollte aber alles beachtet werden, vom Unterschied zwischen PHP_SELF und SCRIPT_NAME über die diversen Varianten der REQUEST_*, QUERY_STRING, PATH_INFO etc. ;)

Gruß, Thoralf

--
Sic Luceat Lux!