如何关闭php的safe_mode模式?

  • 来源:网络
  • 更新日期:2020-07-23

摘要:关闭方法:在php.ini配置文件,查找“safe_mode =”,将其设置为“safe_mode = Off”;然后重启php,或者重启整个环境即可关闭php safe_mode模式(安全模式)。关闭php的safe_mode模式的

关闭方法:在php.ini配置文件,查找“safe_mode =”,将其设置为“safe_mode = Off”;然后重启php,或者重启整个环境即可关闭php safe_mode模式(安全模式)。

关闭php的safe_mode模式的方法

部分环境是开启安全模式(safe_mode),这样会导致程序许多php内置函数没法使用,系统将处于瘫痪状态,建议关闭它。

在php.ini文件里面设置safe_mode = Off ,然后重启php,或者重启整个环境。【相关教程推荐:《PHP教程》】

如图:

拓展资料

什么是PHP安全模式:safe_mode

简单说,PHP安全模式就是以安全模式运行php。

php的安全模式提供一个基本安全的共享环境,在一个有多个用户帐户存在的php开放的web服务器上。当一个web服务器上运行的php打开了安全模式,那么一些函数将被完全的禁止,并且会限制一些可用的功能。

在安全模式下,一些尝试访问文件系统的函数功能将被限制。运行web服务器用户id,如果想要操作某个文件,则必须拥有该文件读取或者写入的访问权限,实现这个限制功能对于php来说是没有问题的。

在安全模式开启的时候,尝试读取或者写入一个本地文件的时候,php将检查当前访问用户是否是该目标文件的所有者。如果不是所有者,则该操作会被禁止。

(写入权限:在较低级别的文件访问权限下,可能会允许读取或者写入系统操作系统的文件,通过php的安全模式实现了防止你操作另外一个用户文件的操作。当然,一个web服务器可能能够访问一个具有全局写入权限的任意文件。)

当安全模式打开的时候,以下函数列表的功能将会受到限制:

chdir, move_uploaded_file, chgrp, parse_ini_file, chown, rmdir, copy, rename, fopen, require, highlight_file, show_source, include, symlink, link, touch, mkdir, unlink

同样的,一些php扩展中的函数也将会受到影响。(加载模块:在安全模式下dl函数将被禁止,如果要加载扩展的话,只能修改php.ini中的扩展选项,在php启动的时候加载)

在php安全模式打开的时候,需要执行系统程序的时候,必须是在safe_mode_exec_dir选项指定目录的程序,否则执行将失败。即使允许执行,那么也会自动的传递给escapeshellcmd函数进行过滤。

以下执行命令的函数列表将会受到影响:

exec,shell_exec,passthru,system,popen

另外,背部标记操作符(`)也将被关闭。

当运行在安全模式下,虽然不会引起错误,但是putenv函数将无效。同样的,其他一些尝试改变php环境变量的函数set_time_limit, set_include_path也将被忽略。

推荐学习:PHP编程从入门到精通