Einführung
URL-Rewriting ist eine Technik zur Transformation einer komplexen, möglicherweise längere URL in ein benutzerfreundlicheres und lesbareres Format. In diesem Artikel untersuchen wir, wie man URL-Rewriting in PHP mit zwei verschiedenen Ansätzen implementiert: der .htaccess-Route und der PHP-Route.
Die .htaccess-Route mit mod_rewrite
Diese Methode beinhaltet das Hinzufügen einer .htaccess-Datei zum Stammverzeichnis und die Konfiguration des Apache-Webservers für die Verwendung von mod_rewrite. Hier ist ein Beispiel für eine RewriteRule:
RewriteEngine on RewriteRule ^/?Some-text-goes-here/([0-9]+)$ /picture.php?id=
Diese Regel weist den Webserver an, dass jede URL, die mit dem Muster „Some-text-goes-here/
Die PHP-Route
Ein alternativer Ansatz besteht darin, PHP für das Umschreiben von URLs zu verwenden. Dazu gehört das Einrichten einer „FallbackResource“ in .htaccess:
FallbackResource /index.php
Diese Konfiguration weist den Server an, alle Anfragen an die Datei index.php weiterzuleiten, wenn die angeforderte Datei nicht existiert. In index.php können Sie Ihre eigene URL-Parsing-Logik implementieren:
$path = ltrim($_SERVER['REQUEST_URI'], '/'); $elements = explode('/', $path); if (empty($elements[0])) { ShowHomepage(); } else { switch (array_shift($elements)) { case 'Some-text-goes-here': ShowPicture($elements); break; case 'more': ... default: header('HTTP/1.1 404 Not Found'); Show404Error(); } }
Diese Technik ermöglicht eine größere Flexibilität beim URL-Parsing und Unterstützung für datenbankgesteuerte und bedingte URLs.
Das obige ist der detaillierte Inhalt vonWie kann ich URL-Rewriting in PHP mithilfe von „.htaccess' oder den integrierten Funktionen von PHP implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!