Tu peux activer le debug des rewrites dans nginx aussi:

Rajouter notice dans la déclaration error_log soit globale soit d'une location ou d'un site :

error_log /.../error.log notice;

Dans le bloc http :

http {
rewrite_log on;

et tu veras ce qui match, l'ordre de recherche, et plein d'autres choses

Le 21/01/2022 à 15:15, Daniel Caillibaud a écrit :
Bonjour,

En cherchant qqchose pour pouvoir tester des conf nginx, je suis tombé sur
https://nginx.viraptor.info/  qui a l'air pas mal, sur le papier, car c'est pas 
fiable du tout
[1]

Vous connaissez qqchose d'équivalent et fiable ?
L'idéal serait un truc en cli à qui on indiquerait la conf nginx 
(/etc/nginx/nginx.conf par
défaut) puis une url absolue et il répondrait quel fichier et quelle location 
match.

En attendant je teste en local avec un script minimaliste[2] (faut aller 
réparer manuellement
des location imbriquées s'il y en a), mais si vous connaissez un outil plus 
pratique
je suis preneur.



[1] ajouter à une configuration basique l'entrée
   location = /robots.txt {
     return 200 "User-agent: *\nDisallow: /\n";
   }
suffit à ce qu'il ne trouve plus une seule location qui match



[2] le script pour générer un vhost bidon pour tester les location
#!/bin/sh

DST=/etc/nginx/sites-enabled/debug.conf

[ $# -lt 1 ] && echo "Il faut passer le fichier source en premier paramètre (il sera 
transformé pour générer $DST)" && exit 1

if echo 'server {
   listen 8080;
   server_name  localhost;
' > "$DST"; then
   sed -nre 's/( *location )([^{]+)\{/\1\2 {\nreturn 200 "\2";\n}/p' $1 >> $DST
   echo "$DST généré à partir de $1"
else
   echo "Impossible d'écrire dans $DST">&2
   exit 1
fi

_______________________________________________
Liste de diffusion du %(real_name)s
http://www.frsag.org/

Répondre à