Maison > Opération et maintenance > Nginx > le corps du texte

Comment accéder à plusieurs projets avec un seul nom de domaine dans Nginx

PHPz
Libérer: 2023-05-16 21:37:20
avant
2084 Les gens l'ont consulté

Introduction à la correspondance du module de localisation

1. "=" correspondance de directive de préfixe, si la correspondance réussit, les autres correspondances seront arrêtées.

2. Les instructions de chaîne ordinaires sont mises en correspondance dans l'ordre de long à court. Si l'emplacement correspondant avec succès utilise ^~, les autres correspondances seront arrêtées (correspondance régulière).

3. Correspondance des commandes d'expression régulière, suivez l'ordre dans le fichier de configuration et arrêtez les autres correspondances en cas de succès.

4. S'il y a une correspondance réussie à la troisième étape, utilisez le résultat, sinon utilisez le résultat de la deuxième étape.

Notes

1. L'ordre de correspondance consiste à faire correspondre d'abord les chaînes ordinaires, puis les expressions régulières. De plus, l'ordre de correspondance des chaînes ordinaires est basé sur la longueur des caractères dans la configuration, de long à court, ce qui signifie que l'ordre des emplacements configurés à l'aide de chaînes ordinaires n'est pas pertinent. En fin de compte, nginx correspondra en fonction de la longueur. de la configuration, mais il convient de noter que les expressions régulières sont testées dans l'ordre spécifié dans le fichier de configuration. Trouver la première expression régulière correspondante arrêtera la recherche.

2. Dans des circonstances normales, la correspondance d'emplacement d'expression régulière sera effectuée une fois que l'emplacement de chaîne ordinaire aura été mis en correspondance avec succès. Il existe deux façons de modifier ce comportement. L'une consiste à utiliser le préfixe "=". À ce stade, une correspondance stricte est effectuée et les autres correspondances sont arrêtées immédiatement après la réussite de la correspondance et la demande est traitée en même temps. L'autre consiste à utiliser le préfixe "^~", s'il est utilisé avec une chaîne régulière, indique à nginx de ne pas tester l'expression régulière si le chemin correspond.

location = /uri
Copier après la connexion

= Le début indique une correspondance exacte, et il ne prendra effet que s'il correspond exactement.

location ^~ /uri
Copier après la connexion

^~ effectue une correspondance de préfixe sur le chemin de l'URL au début et précède l'expression régulière. Le début de

location ~ pattern
Copier après la connexion

~ indique une correspondance régulière sensible à la casse.

location ~* pattern
Copier après la connexion

~* indique une correspondance régulière insensible à la casse.

location /uri
Copier après la connexion

Sans aucun modificateur, cela signifie également une correspondance de préfixe, mais après une correspondance régulière.

location /
Copier après la connexion

Correspondance universelle, toute demande qui ne correspond pas à d'autres emplacements sera mise en correspondance, ce qui équivaut à la valeur par défaut dans le commutateur.

Exemple de configuration

server {
 listen  80;
 server_name test.com;
 index index.html index.htm index.php;
 charset koi8-r;
 access_log /var/log/nginx/host.access.log main;

 # 域名+项目1名称
 location ^~ /a1/ {
   alias /usr/share/nginx/html/a1/public/;
 }

 # 域名+项目2名称
 location ^~ /a2/ {
   alias /usr/share/nginx/html/a2/public/;
 }

 error_page 404    /404.html;

 # redirect server error pages to the static page /50x.html
 
 error_page 500 502 503 504 /50x.html;
 location = /50x.html {
  root /usr/share/nginx/html/500.html;
 }

 #pass the php scripts to fastcgi server listening on 127.0.0.1:9000
 
 location ~ \.php$ {
  root   html;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  fastcgi_param script_filename /scripts$fastcgi_script_name;
  include  fastcgi_params;
 }
 
 location ~ /\.ht {
  deny all;
 }
}
Copier après la connexion

Aperçu de l'effet

1. Visitez le projet a1

Comment accéder à plusieurs projets avec un seul nom de domaine dans Nginx

2.

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!

Étiquettes associées:
source:yisu.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!