PHP gRPC 忽略 keepalive 参数

问题描述 投票:0回答:1

我输入了这3个参数:

grpc.keepalive_time_ms=7200000
grpc.keepalive_timeout_ms=200000
grpc.keepalive_permit_without_calls=1

/etc/php/8.1/apache2/conf.d/20-grpc.ini
/etc/php/8.1/apache2/conf.d/custom-php.ini
/etc/php/8.1/cli/conf.d/20-grpc.ini
/etc/php/8.1/cli/conf.d/custom-php.ini
。然后我重新启动网络服务器(整个 Docker 容器)并使用
php -i | grep grpc
列出 grpc 配置,但输出中缺少它们:

/etc/php/8.1/cli/conf.d/20-grpc.ini,
grpc
grpc support => enabled
grpc module version => 1.59.1
grpc.enable_fork_support => 0 => 0
grpc.grpc_trace => all,-timer_check => all,-timer_check
grpc.grpc_verbosity => debug => debug
grpc.log_filename => /var/log/grpc.log => /var/log/grpc.log
grpc.poll_strategy => no value => no value

我使用 PHP 8.1、gRPC 扩展 1.45.0 和 1.59.1 对其进行了测试。 我做错了什么?

php apache grpc
1个回答
0
投票

您正在更改/读取错误的 PHP SAPI:您编辑了 Apache(Web SAPI)的 PHP 配置文件,但您从命令行(CLI SAPI)检查配置。

您的更改实际上仅适用于 Apache。我对 gRPC 不了解,但如果您只想在通过 Apache 运行 PHP 时应用您的配置,请在网页上检查它(例如运行

phpinfo()
)。

如果您还希望将配置应用于 CLI,请将其放入 PHP CLI 将读取的文件中(根据您的命令输出:

/etc/php/8.1/cli/conf.d/20-grpc.ini
)。

要了解有关 PHP 配置如何读取 .ini 文件的更多信息,请使用 CLI 上的

php -i
和网页上的
phpinfo()
检查目录中是否有其他 .ini 文件。

© www.soinside.com 2019 - 2024. All rights reserved.