Maison > développement back-end > tutoriel php > Comment supprimer les extensions de fichiers des URL dans NGINX ?

Comment supprimer les extensions de fichiers des URL dans NGINX ?

Patricia Arquette
Libérer: 2024-11-17 14:02:02
original
267 Les gens l'ont consulté

How to Remove File Extensions from URLs in NGINX?

Suppression des extensions de fichiers des URL dans NGINX

Pour présenter une structure d'URL plus propre, vous souhaitez supprimer ".php" et ".html " de toutes les URL de votre site Web.

Au départ, vous avez supprimé avec succès les extensions ".html" en utilisant ce qui suit configuration :

location / {
    root   html;
    index  index.html index.htm index.php;
    try_files $uri.html $uri/ =404; 
}
Copier après la connexion

Cependant, cette configuration ne fonctionne pas pour les extensions ".php". Pour résoudre ce problème, vous pouvez modifier votre fichier de configuration NGINX comme suit :

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;
}
Copier après la connexion

Cette configuration supprimera désormais les extensions ".php" et ".html" de toutes les URL :

  • try_files $uri $uri.html $uri/ vérifie l'URL d'origine, l'URL avec une extension ".html" et l'URL en tant que répertoire.
  • Si aucun de ces fichiers n'existe, il transmet la requête à l'emplacement @extensionless-php.
  • try_files $uri =404; dans le bloc location ~ .php$ renvoie explicitement une erreur 404 pour les URL se terminant par ".php".
  • Enfin, l'emplacement @extensionless-php réécrit l'URL pour ajouter l'extension ".php" si ce n'est pas le cas. n'existent pas déjà.

Redémarrez NGINX après avoir effectué ces modifications, et vos URL seront désormais présentées sans les extensions de fichier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal