FastCGI 参数详解
FastCGI 参数是 Nginx 将请求信息传递给 PHP-FPM 或其他 FastCGI 服务的关键配置,通过合理设置可以保证动态请求正确处理。
一、标准 fastcgi_param
Nginx 官方提供了 fastcgi_params 文件,常见参数如下:
| 指令 | 说明 |
|---|---|
SCRIPT_FILENAME |
请求脚本完整路径 |
QUERY_STRING |
请求查询字符串 |
REQUEST_METHOD |
HTTP 请求方法 |
CONTENT_TYPE |
请求内容类型 |
CONTENT_LENGTH |
请求内容长度 |
SCRIPT_NAME |
脚本名称 |
REQUEST_URI |
请求 URI |
DOCUMENT_URI |
当前请求文档 URI |
DOCUMENT_ROOT |
请求根目录 |
SERVER_PROTOCOL |
HTTP 协议版本 |
GATEWAY_INTERFACE |
CGI 版本信息 |
SERVER_SOFTWARE |
Nginx 版本信息 |
REMOTE_ADDR |
客户端 IP |
REMOTE_PORT |
客户端端口 |
SERVER_ADDR |
服务器 IP |
SERVER_PORT |
服务器端口 |
SERVER_NAME |
服务器名称 |
二、常用 fastcgi_param 配置示例
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PHP_VALUE "open_basedir=/var/www/html";
}
`
说明
- SCRIPT_FILENAME:必需,指定 PHP-FPM 执行脚本路径
- fastcgi_param PHP_VALUE:可设置 PHP 配置参数,如
open_basedir、upload_max_filesize等 - 其他参数可通过
include fastcgi_params自动加载,确保 PHP-FPM 正确识别请求信息
三、自定义 FastCGI 参数
可以根据业务需求自定义参数传递给后端应用:
fastcgi_param CUSTOM_VAR "my_custom_value";
PHP 中通过 $_SERVER['CUSTOM_VAR'] 获取该值。
掌握 FastCGI 参数详解,能够精确控制 Nginx 与 PHP-FPM 之间的请求传递与处理,确保动态请求稳定高效。
相关内容
- 备份与恢复 本节介绍 Nginx 配置备份与恢复方法,包括配置文件备份、日志备份、快速恢复和灾难恢复策略,保障服务安全可靠。
- 常用命令与服务管理 本节介绍常用的 nginx 命令与服务管理方法,包括启动、停止、重载、日志查看、配置检测等操作,帮助你熟练掌握 nginx 文档中的服务运维要点。
- Nginx 教程:目录结构与配置文件详解 本节 Nginx 教程详细介绍 nginx 目录结构与配置文件组成,帮助你掌握 nginx.conf、sites-enabled、logs 等常见路径及配置含义...
- Nginx 与 Docker 集成 本节介绍 Nginx 与 Docker 的集成方法,包括 Nginx 容器部署、配置卷挂载、端口映射和与后端服务协作,实现容器化高可用 Web 服务。
- FastCGI 工作原理 本节讲解 Nginx 与 FastCGI 的工作原理,包括请求转发、PHP-FPM 处理流程及数据交互方式,帮助你理解 nginx.conf 中动态内容处理机制...
- Nginx 作为前端网关 本节介绍 Nginx 作为前端网关的配置方法,包括反向代理、负载均衡、请求路由和安全控制,实现高性能和高可用 Web 服务。