我知道我可以通过 Nginx 向 $_SERVER 变量添加自定义值
fastcgi_param MY_VARIABLE "myValue";
是否可以将相同的变量添加到 PHP CLI $_SERVER?这将专门用于 cron 作业。我正在使用 Ubuntu 服务器。
我发现的一种选择是调用 PHP 脚本
$ MY_VARIABLE="myValue" php /path/to/php/script
但这似乎不太理想。
默认情况下,环境变量不会发送到 PHP,据我所知,这样做会稍微减慢速度。如果可能的话,我想避免这种情况。
我找到的最佳解决方案是将变量放入 /etc/environment。此处的设置由 cron 作业和 CLI 加载并显示在 PHP $_SERVER 中。
默认情况下 /etc/environment 有一行用于 PATH。只需在文件末尾添加一个新行。
附带说明一下,PATH 设置是这个文件似乎被 PHP 覆盖,如 $_SERVER 所示。
PHP Web 服务不显示该变量,但将其添加到 Nginx 配置中很容易。