Nginx

Exemples de regex d'emplacement Nginx

Exemples de regex d'emplacement Nginx
La directive Nginx Location permet d'acheminer les requêtes vers un emplacement particulier dans le système de fichiers. Pendant que Nginx fait correspondre ou recherche un bloc d'emplacement par rapport à l'URL demandée, la directive d'emplacement indique à Nginx où rechercher un chemin spécifique en incluant tous les fichiers et répertoires.

Nous expliquerons brièvement les exemples de regex d'emplacement Nginx dans cet article.

Conditions préalables

Il est supposé dans cet article que Nginx est déjà installé sur votre système.

Syntaxe de la directive d'emplacement Nginx

La syntaxe suivante est disponible pour le répertoire d'emplacement dans le fichier de configuration Nginx :

emplacement [modificateur] [correspondance d'URL]

Le bloc d'emplacement Nginx peut être ajouté dans un bloc de serveur ou sur un autre emplacement avec certaines conditions prédéfinies. Dans la syntaxe ci-dessus, le modificateur est un paramètre facultatif. La présence de modificateurs dans le bloc de localisation permet à Nginx de traiter une URL dans un ordre différent. Ici, quelques modificateurs sont mentionnés ci-dessous avec quelques exemples :

1. Faire correspondre toutes les demandes avec le bloc de localisation Nginx

Le '/' est utilisé pour l'emplacement du préfixe pour correspondre à toutes les demandes. Cependant, si aucune meilleure correspondance n'est recherchée, elle sera utilisée comme dernier résultat.

Exemple
Dans le bloc d'emplacement suivant, il correspondra à toutes les demandes :

emplacement /

2. Faire correspondre le répertoire à l'aide du bloc de localisation dans Nginx

L'exemple suivant correspondra à toute demande dans le bloc d'emplacement commençant par /images/. Par conséquent, la recherche d'un bloc correspondant plus spécifique par rapport à l'URI demandé. Cependant, si Nginx ne recherche pas de correspondance plus spécifique, le bloc de localisation sera sélectionné directement.

Exemple
Dans l'exemple ci-dessous, Nginx correspondra à toute demande dans le bloc de localisation commençant par /images/.

emplacement /images/

3. Correspondance exacte en utilisant le modificateur d'emplacement '=' (égal à)

Le modificateur '=' signe égal est utilisé lorsque vous faites correspondre exactement le bloc d'emplacement avec un URI demandé.

Exemple
Nginx essaie d'abord de faire correspondre les emplacements de préfixe les plus spécifiques. Cependant, dans l'exemple suivant, le modificateur '=' dans le bloc d'emplacement correspondra exactement au chemin de préfixe demandé, puis arrêtera de rechercher de meilleures correspondances.

emplacement = /imgs

Dans l'exemple de bloc de localisation mentionné ci-dessus, le modificateur de localisation '=' correspondra exactement à l'URL mydomain.com/imgs. Les URL 'mondomaine/imgs/index.html' ou 'mydomain/imgs/' ne correspondra pas à la condition.

4. Correspondance Regex sensible à la casse utilisant le modificateur Tilda (~)

Le modificateur tilda (~) effectue la recherche de correspondance d'expression régulière sensible à la casse par rapport à l'URI demandé et recherche en permanence une meilleure correspondance.

Exemple
Le modificateur ~ dans l'exemple suivant effectue la correspondance regex sensible à la casse (expression régulière) dans le bloc de localisation :

emplacement ~ /imgs

5. Correspondance insensible à la casse utilisant le modificateur tilda (~*)

Le signe tilde avec un modificateur astérisque (~*) correspond à toute demande (insensible à la casse) dans le bloc d'emplacement suivant qui se termine par un format de fichier spécifique tel que le fichier se terminant par png, gif, ico, jpeg, jpg, css ou js. Cependant, toutes les demandes envoyées au dossier /imgs/ seront traitées par le bloc d'emplacement précédent.

Exemple
Dans le bloc d'emplacement suivant, il correspondra à tous les types de fichiers insensibles à la casse.

emplacement ~* .(png|ico|gif|jpg|jpeg|css|js)$

6. Modificateur de signe Caret-Tilde (^~) pour la correspondance RegEx

Le modificateur caret-tilda (^~) est utilisé pour effectuer la correspondance d'expression régulière sensible à la casse par rapport à l'URL demandée. Par conséquent, si l'URI correspondant sera mis en correspondance dans /imgs ou /imgs/pico.png, il arrête de chercher pour trouver une meilleure correspondance.

emplacement ^~ /imgs

Conclusion

Nous avons discuté de quelques exemples et de détails importants sur la directive de localisation Nginx avec regex. Nous avons également mentionné l'utilisation de modificateurs avec des exemples dans cet article. J'espère que cet article vous aidera à comprendre le concept principal des blocs de localisation dans NGINX. Merci!

Comment modifier les paramètres de la souris et du pavé tactile à l'aide de Xinput sous Linux
La plupart des distributions Linux sont livrées avec la bibliothèque "libinput" par défaut pour gérer les événements d'entrée sur un système. Il peut ...
Remappez les boutons de votre souris différemment pour différents logiciels avec X-Mouse Button Control
Peut-être que vous avez besoin d'un outil qui pourrait faire changer le contrôle de votre souris avec chaque application que vous utilisez. Si tel est...
Examen de la souris sans fil Microsoft Sculpt Touch
J'ai lu récemment sur le Microsoft Sculpt Touch souris sans fil et j'ai décidé de l'acheter. Après l'avoir utilisé pendant un certain temps, j'ai déci...