【发布时间】:2020-08-03 06:33:23
【问题描述】:
我有一个非常简单的 docker 安装,包括 NGINX 和 PHP,通过端口 9000 上的 FastCGI。
我已经通过 Dockerfile 进行了配置,以便 PHP 容器将“php.ini-production”复制到“php.ini”,然后我将自己的“my_php.ini”复制到“conf.d”。
目前我在“my_php.ini”中的唯一设置是“fastcgi.logging = 0”和“display_errors = on”(最后一个只是为了确认文件正在加载)。
现在,如果我的脚本有错误,则错误会按预期显示,因为“display_errors = on”。
但是我发现“fastcgi.logging = 0”并没有阻止 PHP 记录所有发出的请求,这是完全无用和不需要的,只会阻塞 docker 日志。
请注意,如果 PHP 脚本运行 phpinfo(),它确实显示“fastcgi.logging = 0”已设置。
但它似乎并没有关闭我想要的 SAPI 日志记录。当然,docker 日志包含每个请求的一行,如下所示:
172.18.0.3 - 01/Aug/2020:12:56:25 +0000 "GET /index.php" 200
有人对如何关闭此 SAPI 日志记录有任何建议吗?
谢谢...
为了完整起见,这是我的 PHP Dockerfile:
FROM php:7.4-fpm
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
COPY application/php.ini "$PHP_INI_DIR/conf.d/my_php.ini"
COPY src /var/www/html
EXPOSE 9000
CMD ["php-fpm"]
【问题讨论】: