关于“php需要重启”的问题,小编就整理了【4】个相关介绍“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安全模式影响哪些函数?开启safe_mode之后对php系统函数的影响:
safe_mode即为PHP的安全模式,在php.ini中设置safe_mode = On重启PHP便可开启安全模式。
当安全模式开启后,PHP相应的一些系统函数,文件操作函数等将会受限。例如:
ckdir,
move_uploaded_file,
chgrp,
parse_ini_file,
chown,rmdir,
copy,
rename,
fopen,
require,
highlight_file,
show_source,
include,
symlink,
link,
touch,
mkdir,
unlink,
exec,
shell_exec,
pasathru,
system,
popen
除此之外,一些php扩展的函数也会受到限制,不能在程序里面直接加载扩展,只能到php.ini里加载,而且php如果需要执行操作系统的程序时,必须在safe_mode_exec_dir中指定程序的路径,否则执行将失败。
php代码运行无法在网页显示?解决方法:
1、打开php.ini配置文件;
2、取消error_reporting的注释,将其设置为【error_reporting=E_ALL&~E_NOTICE】;
3、重启服务器即可显示。
php启动时候提示PHP startup的解决方法?配置好php环境后,每次开机都有警告提示说 PHP startup,解决这个问题很简单只需要在
php.ini
文件中修改 extension_dir配置就行。
把; extension_dir = "ext"改为 extension_dir = "D:/myphpenv/php5.4/ext"
其中D:/myphpenv/php5.4/为php安装目录。
重启apache发现警告没有了。
到此,以上就是小编对于“php需要重启”的问题就介绍到这了,希望介绍关于“php需要重启”的【4】点解答对大家有用。