Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich GET-Variablen umschreiben, um saubere URLs mit .htaccess zu erstellen?

Wie kann ich GET-Variablen umschreiben, um saubere URLs mit .htaccess zu erstellen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-26 19:44:10957Durchsuche

How can I Rewrite GET Variables to Create Clean URLs with .htaccess?

GET-Variablen mit .htaccess umschreiben

In der Webentwicklung ist es oft wünschenswert, saubere und ästhetisch ansprechende URLs zu erstellen und gleichzeitig die Funktionalität der Anfrage beizubehalten Parameter. Dies kann mithilfe von .htaccess-Rewrite-Regeln erreicht werden.

Angenommen, Sie haben eine index.php-Datei, die das gesamte Routing verwaltet und GET-Variablen als „Seiten“-Parameter empfängt. Um die folgende URL-Umschreibung zu erreichen:

http://localhost/index.php?page=controller

An:

http://localhost/controller/

Sie können die folgende Umschreibungsregel verwenden:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([\w\d~%.:_\-]+)$ index.php?page= [NC]

Um zusätzliche Parameter in zu verarbeiten URL können Sie die folgende Rewrite-Regel verwenden:

RewriteRule ^(.*)$ index.php?params= [NC, QSA]

Mit dieser Rewrite-Regel erhält Ihre eigentliche PHP-Datei die Parameter als „params“ im GET-Array. Sie können auf die Parameter zugreifen, indem Sie die Zeichenfolge „params“ mit Code wie dem folgenden auflösen:

$params = explode("/", $_GET['params']);
for($i = 0; $i < count($params); $i+=2) {
  echo $params[$i] . " has value: " . $params[$i+1] . "<br />";
}

Diese Lösung ermöglicht es Ihnen, saubere URLs beizubehalten, während Sie auf GET-Parameter in Ihrem PHP-Skript zugreifen, und sorgt so für eine benutzerfreundliche und konsistente Lösung Web-Erlebnis.

Das obige ist der detaillierte Inhalt vonWie kann ich GET-Variablen umschreiben, um saubere URLs mit .htaccess zu erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn