子文件夹的 Nginx 位置配置
Nginx 服务器配置允许根据 URI 模式将请求路由到特定位置。本问题探讨如何配置 Nginx 以访问指定路径中的子文件夹,特别是 /static 和 /manage,具有不同的 URI 前缀。
要配置对根 URI (/) 处的 /static 文件夹的访问,请定义根设置为 /static 子文件夹的位置块:
location / { root /var/www/mysite/static; index index.html; }
对于包含 Slim PHP 框架的 /manage 文件夹,根路径必须设置为index.php 文件所在的公共子文件夹。由于公共子文件夹是一个位置,因此使用别名指令代替根:
location ^~ /manage { alias /var/www/mysite/manage/public; index index.php; }
此外,如果 PHP 文件同时存在于 /static 和 /manage 文件夹中,则需要两个 location ~ .php 块:
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; }
和
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; }
^~ 修饰符确保 /manage 的前缀位置优先于正则表达式位置 ~ .php$.
以上是如何为具有不同 URI 前缀的子文件夹配置 Nginx 位置块?的详细内容。更多信息请关注PHP中文网其他相关文章!