linux配置php运行环境,如何让PHP能够读取系统环境变量?

用户投稿 108 0

关于“linux_php_配置环境变量”的问题,小编就整理了【4】个相关介绍“linux_php_配置环境变量”的解答:

如何让PHP能够读取系统环境变量?

一、fpm模式

1、通过服务器传递

如在nginx的配置里设置:

fastcgi_param ENV_XXX 123456;

每次页面请求nginx都会将此变量传递给php,php可以通过getenv函数或$_SERVER全局变量获得。

2、通过fpm配置传递

fpm在每次启动时都会读取php-fpm.conf文件中的环境变量设置,如:

env[ENV_XXX]="test test"

或者让fpm读取系统环境变量,如:

env[ENV_XXX]=$ENV_XXX

注意此种方式要确保系统环境变量存在,且不被sudo禁用。

如果fpm是用sudo方式启动,默认sudo会禁用一些环境变量,可以通过以下方式放开限制:

vim /etc/sudoers

Defaults env_reset

Defaults env_keep = "ENV_XXX"

或者干脆放开所有限制:

Defaults !env_reset

最后,如果修改了php-fpm.conf中的设置需要重启fpm才能生效,同样php可以通过getenv函数或$_SERVER全局变量获得环境变量。

二、命令行模式

命令行模式限制较少,可以通过getenv函数或$_SERVER全局变量获取对当前执行用户有效的系统环境变量,同样要注意sudo的限制。

php配置全局环境变量没生效?

您好,你需要在函数外部声明全局变量!

linux 环境变量和全局变量有什么关系?

Linux环境变量分为用户环境变量,和全局环境变量,用户环境变量只对指定的用户生效,一般配置在用户的家目录,全局环境变量配置在/etc/profile里

在Linux系统下使环境变量生效的实用方法?

在/etc/profile文件中添加变量

然后‬执行‬source /etc/profile立马‬生效‬

到此,以上就是小编对于“linux_php_配置环境变量”的问题就介绍到这了,希望介绍关于“linux_php_配置环境变量”的【4】点解答对大家有用。

抱歉,评论功能暂时关闭!