


So entfernen Sie sowohl .php- als auch .html-Erweiterungen aus URLs mit NGINX
Einführung
Bei der Bereitstellung von Webinhalten Aus ästhetischen oder Sicherheitsgründen kann es wünschenswert sein, Dateierweiterungen vor der URL zu verbergen. Dies kann mit NGINX erreicht werden, einer beliebten Webserver-Software.
Problem
Das Ziel besteht darin, sowohl .php- als auch .html-Erweiterungen aus URLs zu entfernen und gleichzeitig ihre Funktionalität beizubehalten . Beispielsweise sollte die URL http://www.meinedomain.com/indexhtml.html als http://www.meinedomain.com/indexhtml und http://www.meinedomain.com/indexphp.php angezeigt werden angezeigt als http://www.mydomain.com/indexphp.
Lösung
Die folgende NGINX-Konfiguration kann verwendet werden, um das Gewünschte zu erreichen Ergebnis:
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; }
Erläuterung
- Standort /: Dieser Block gilt für alle Anfragen an das Stammverzeichnis der Website.
- try_files: Diese Direktive versucht, die durch $uri angegebene Datei zu finden. Wenn die Datei nicht existiert, wird versucht, $uri.html oder ein Verzeichnis mit demselben Namen zu finden. Wenn keines von beiden vorhanden ist, wird die Anfrage an den @extensionless-php-Standortblock weitergeleitet.
- index: Diese Direktive gibt die Standarddateien an, die bereitgestellt werden sollen, wenn $uri auf ein Verzeichnis zeigt.
- location ~ .php$: Dieser Block entspricht Anfragen mit der Endung .php.
- try_files $uri =404: Diese Direktive gibt einen 404-Fehler zurück, wenn der URI genau eine .php-Datei ist (ausgenommen Verzeichnisse).
- location @extensionless-php: In diesem Block erfolgt die Neuverkabelung passiert.
- rewrite: Diese Direktive schreibt die Anfrage in den URI mit der hinzugefügten Erweiterung .php um. Das letzte Flag verhindert ein weiteres Umschreiben.
Durch die Implementierung dieser Konfiguration werden sowohl .php- als auch .html-Erweiterungen automatisch aus URLs entfernt, was für ein sauberes und benutzerfreundliches Surferlebnis sorgt.
Das obige ist der detaillierte Inhalt vonWie entferne ich .php- und .html-Erweiterungen von URLs mit NGINX?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Thesecrettokeepingaphp-betriebene WebsiterunningSmoothyunderheavyLoadInvolvesseveralkeyStrategies: 1) ImplementoPCodeCachingWithopcachetoreducescholexexexcutiontime, 2) verwendetatabasequerycachingwithredolesendatabaSelaDaLoadaLoadaLoadaLoad, 3) LeveragecdnslikecloudLesendatabaselaSelaSelaSelaSelaSelaSelaSelaSelaSelaSeladinaSelaSelaSelaSelaSeladinaSelaSeladin

Sie sollten sich um die Abhängigkeitsinjektion (DI) kümmern, da Ihr Code klarer und leichter zu warten ist. 1) DI macht es modularer durch Entkopplung von Klassen, 2) verbessert die Bequemlichkeit von Tests und Code -Flexibilität, 3) DI -Container verwenden, um komplexe Abhängigkeiten zu verwalten, aber auf die Auswirkungen auf die Leistung und die kreisförmigen Abhängigkeiten zu achten, 4) Die beste Praxis besteht darin, sich auf abstrakte Schnittstellen zu verlassen, um lose Koupleln zu erreichen.

Ja, optimizingaphpapplicationSispossiblandinential.1) ImplementCachingusedapcutoredatabaSeload.2) optimizedatabases-withindexing, effizienteQuerien und AnconnectionPooling.3) EnhanceCodewithbuilt-Infunktionen, Vermeidung von Globalvariablungen und UsusepcodeCodeCecess

TheKeyStrategieS significantBoostPhpapplicationPlicationperformanceare: 1) UseOpCodeCaching-likeopcachetoreduceExecutiontime, 2) optimizedatabaseInteractionswithprepararedStatements undProperIndexing, 3) configureWebserverSLIKENGINXWITHPHP-FPMFRMFRETBETTERPERSPRIGUNG, 4), 4), 4), 4), 4))

APHPDependencyInjectionContainerisatoolthatmanagesClass -Abhängigkeiten, EnhancingCodemodularität, Testbarkeit und Maschinenbarkeit.

Wählen Sie die Abhängigkeitsinjektion (DI) für große Anwendungen. Der Servicelocator ist für kleine Projekte oder Prototypen geeignet. 1) DI verbessert die Testbarkeit und Modularität des Codes durch Konstruktorinjektion. 2) Servicelocator erhält Dienstleistungen durch die Zentrumregistrierung, was bequem ist, aber zu einer Erhöhung der Codekupplung führen kann.

PhpapplicationscanbeoptimizedforspeedandefficiencyBy: 1) EnabgingOpcacheinphp.ini, 2) usePreparedStatementsWithpdoFordatabasequeries, 3) Ersatzloopswitharray_Filterandarray_mapfordataprozessing, 4) Konfigurieren von), 4), implementieren, 5)

PhpemailvalidationInvolvesthreesteps: 1) Formatvalidationusing -RegularexpressionStocheckTheemailformat; 2) DnsvalidationToensurethedomainhasavalidmxRecord;


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

Dreamweaver Mac
Visuelle Webentwicklungstools

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor
