PHP状态页正常工作,但Nginx记录错误
我已使用以下Nginx conf在docker容器内启用了php状态页:PHP状态页正常工作,但Nginx记录错误,php,docker,nginx,Php,Docker,Nginx,我已使用以下Nginx conf在docker容器内启用了php状态页: server { listen *:80; location /php-status { allow 127.0.0.1; fastcgi_pass php:9000; include /etc/nginx/fastcgi_params; } } 因此,当我尝试curl/php状态时,我会得到包含完整状态信息的有效响应 但有一个问题:Ng
server {
listen *:80;
location /php-status {
allow 127.0.0.1;
fastcgi_pass php:9000;
include /etc/nginx/fastcgi_params;
}
}
因此,当我尝试curl/php状态时,我会得到包含完整状态信息的有效响应
但有一个问题:Nginx keep loggin error:
*1 realpath()“/etc/nginx/html”失败(2:没有这样的文件或目录),客户端:172.19.0.8,服务器:,请求:“获取/php状态HTTP/1.1”
实际上,容器中没有/etc/nginx/html
目录
我试图创建/etc/nginx/html
,但在这种情况下,我从状态页面收到文件未找到
响应
有什么建议可以让php状态页面在没有任何nginx错误的情况下工作吗
谢谢大家!
更新:
这里还有一些fastcgi_参数
:
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_param SCRIPT_NAME $realpath_root$fastcgi_script_name;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $realpath_root;
/etc/nginx/html
是默认的文档根目录。它之所以这样做是因为根据您提供的内容,您没有使用root
指令指定任何其他内容
根据文档根所在的位置,可以尝试此操作
server {
listen *:80;
location /php-status {
root /;
allow 127.0.0.1;
fastcgi_pass php:9000;
include /etc/nginx/fastcgi_params;
}
}
它起作用了
root
目录fastcgi_param SCRIPT_NAME
设置server {
listen *:80;
location /php-status {
root /;
allow 127.0.0.1;
fastcgi_pass php:9000;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
您是否可以尝试允许从0.0.0.0而不是仅从127.0.0.1进行连接?@Mihai,结果是相同的:Nginx错误日志中的有效响应和错误结果是未找到
文件。
如果指定了root。我在描述中添加了一些fastcgi_参数
,也许会有所帮助