Heim  >  Artikel  >  Backend-Entwicklung  >  Wie entferne ich .php- und .html-Erweiterungen von URLs in NGINX?

Wie entferne ich .php- und .html-Erweiterungen von URLs in NGINX?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-24 03:53:09304Durchsuche

How to Remove .php and .html Extensions from URLs in NGINX?

Entfernen von .php- und .html-Erweiterungen aus URLs in NGINX

Um das Problem der Anzeige sauberer URLs ohne .php oder .html zu beheben Erweiterungen können Sie die folgende Konfiguration in Ihrer Nginx-Konfigurationsdatei implementieren.

location / {
    try_files $uri $uri.html $uri/ @extensionless-php;
    index index.html index.htm index.php;
}

location ~ \.php$ {
    try_files $uri =404;
}

location @extensionless-php {
    rewrite ^(.*)$ .php last;
}

Diese Konfiguration erreicht das gewünschte Ergebnis, indem zunächst nach dem angeforderten URI gesucht wird. Wenn der URI vorhanden ist, wird er unverändert angezeigt. Wenn es nicht vorhanden ist, wird nach dem URI mit der Erweiterung .html gesucht. Wenn schließlich weder der URI noch der URI mit der Erweiterung .html vorhanden ist, wird der URI neu geschrieben, um eine Erweiterung .php hinzuzufügen und versucht, diese Datei anzuzeigen.

Durch das Hinzufügen dieser Konfiguration wird Nginx Folgendes tun:

  1. Suchen Sie nach http://www.mydomain.com/indexhtml als http://www.mydomain.com/indexhtml.html.
  2. Suchen Sie nach http://www.mydomain.com/indexphp als http://www.mydomain.com/indexphp.php.
  3. Wenn weder indexhtml.html noch indexphp.php vorhanden sind, schreiben Sie indexhtml in indexhtml.php bzw. indexphp in indexphp.php um.

Einmal Sie haben diese Konfiguration zu Ihrer Datei hinzugefügt, starten Nginx neu und Ihre URLs sollten ohne die Erweiterungen sauber angezeigt werden.

Das obige ist der detaillierte Inhalt vonWie entferne ich .php- und .html-Erweiterungen von URLs in NGINX?. 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