machen Sobald es auf index.php umgeleitet ist, kann diese Datei auf $_SERVER['REQUEST_URI']
schauen, um zu bestimmen, was in dem this/title/is/cool
Teil ist, und dann gehen Nachschlagen, welche Seite von einer Datenbank bedient werden soll, da REQUEST_URI die vollständige URI-Zeichenfolge auflistet, obwohl die tatsächliche Seiten-URL, zu der umgeleitet wurde, nur der erste Teil davon ist.
Zum Beispiel
http://www.example.com/foo/bar/
wird neu geschrieben
http://www.example.com/index.php/foo/bar/
Dies führt tatsächlich in http://www.example.com/index.php geladen, aber $_SERVER['REQUEST_URI']
die volle /index.php/foo/bar/
in ihm haben.
Einige Anwendungen einen anderen Ansatz verwenden, verwenden sie .htaccess
, nur die hinteren „Verzeichnisse“ zu nehmen und sie in die Query-String setzen, so dass das Umschreiben so etwas wie dies zu:
http://www.example.com/index.php?path=/foo/bar/
in diesem Fall die Der mitgelieferte Pfad ist in _GET['path']
verfügbar.
Danke! Ich dachte, es könnte so etwas sein, aber ich leugnete es, weil ich dachte, niemand kann sicher sein, dass Servervariablen überall verfügbar sind. $ _SERVER ['REQUEST_URI'] ist eigentlich eine zuverlässige Variable, die auf allen Setups vorhanden ist? – pixeline
'$ _SERVER ['REQUEST_URI']' enthält nicht den vollständigen URI, sondern nur den URI-Pfad und die Abfrage. – Gumbo
Danke Gumbo. Bearbeitet. – Amber