Home >php教程 >php手册 >php safe_mode简单总结

php safe_mode简单总结

WBOY
WBOYOriginal
2016-06-06 20:14:15941browse

php safe_mode是在php5.4以前php_ini_system范围的一个配置,打开该配置通过一些环境的限制来提高服务器的安全性,同时也会带来一些麻烦。 安全模式配置指令: 名称 默认值 可修改范围 更新记录 safe_mode 0 PHP_INI_SYSTEM safe_mode_gid 0 PHP_INI_SYSTEM

php safe_mode是在php5.4以前php_ini_system范围的一个配置,打开该配置通过一些环境的限制来提高服务器的安全性,同时也会带来一些麻烦。

安全模式配置指令:

名称 默认值 可修改范围 更新记录
safe_mode “0” PHP_INI_SYSTEM
safe_mode_gid “0” PHP_INI_SYSTEM 自 PHP 4.1.0 起可用
safe_mode_include_dir NULL PHP_INI_SYSTEM 自 PHP 4.1.0 起可用
safe_mode_exec_dir “” PHP_INI_SYSTEM
safe_mode_allowed_env_vars “PHP_” PHP_INI_SYSTEM
safe_mode_protected_env_vars “LD_LIBRARY_PATH” PHP_INI_SYSTEM
open_basedir NULL PHP_INI_SYSTEM
disable_functions “” 仅 php.ini 自 PHP 4.0.1 起可用
disable_classes “” 仅 php.ini 自 PHP 4.3.2 起可用

safe_mode带来的影响也与这些配置指令有关

名称 影响范围 具体描述
safe_mode_gid 文件操作 检查被操作的文件或目录是否与正在执行的脚本有相同的 UID(所有者)。
safe_mode_include_dir 文件包含 当从此目录及其子目录(目录必须在 include_path 中或者用完整路径来包含)包含文件时越过UID/GID 检查
safe_mode_exec_dir 程序执行函数 如果 PHP 使用了安全模式,system() 和其它程序执行函数将拒绝启动不在此目录中的程序。
safe_mode_allowed_env_vars 本指令包含有一个逗号分隔的前缀列表。在安全模式下,用户只能改变那些名字具有在这里提供的前缀的环境变量。
safe_mode_protected_env_vars 本指令包含有一个逗号分隔的环境变量的列表,最终用户不能用 putenv() 来改变这些环境变量。
open_basedir NULL 将 PHP 所能打开的文件限制在指定的目录树,包括文件本身。本指令不受安全模式打开或者关闭的影响。
disable_functions 列出的函数将会被禁用
disable_classes 列出的类将会被禁用
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn