Configuration de l'emplacement Nginx pour les sous-dossiers
La configuration du serveur Nginx permet le routage des requêtes vers des emplacements spécifiques en fonction de modèles d'URI. Cette question explore comment configurer Nginx pour accéder aux sous-dossiers dans un chemin spécifié, en particulier /static et /manage, avec différents préfixes d'URI.
Pour configurer l'accès au dossier /static à l'URI racine (/), définissez un bloc d'emplacement avec la racine définie sur le sous-dossier /static :
location / { root /var/www/mysite/static; index index.html; }
Pour le dossier /manage, qui contient un framework Slim PHP, le chemin racine doit être défini sur le sous-dossier public où réside le fichier index.php. Étant donné que le sous-dossier public est un emplacement, une directive alias est utilisée à la place de root :
location ^~ /manage { alias /var/www/mysite/manage/public; index index.php; }
De plus, si des fichiers PHP sont présents dans les dossiers /static et /manage, deux emplacements ~ des blocs .php sont requis :
location ~ \.php$ { try_files $uri =404; fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_param SCRIPT_NAME $fastcgi_script_name; }
et
location ~ \.php$ { if (!-f $request_filename) { return 404; } fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_param SCRIPT_NAME $fastcgi_script_name; }
Le modificateur ^~ garantit que l'emplacement du préfixe pour /manage prend priorité sur l'emplacement de l'expression régulière ~ .php$.
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!