+
95
-

回答

还漏了一个,开启php的safe_mode模式:

PHP的安全模式(safe_mode)是为了提高共享服务器环境下的安全性而设计的。开启安全模式后,会对系统操作、文件权限设置等产生影响,限制某些函数的执行,从而减少被攻击者植入webshell所带来的安全问题。

以下是开启和配置PHP安全模式的步骤和注意事项:

开启安全模式

safe_mode = On
当 safe_mode 开启时,PHP 会对文件操作进行严格的 UID(用户 ID)检查,确保脚本只能操作与脚本所有者 UID 相同的文件。然而,有时候这种严格的 UID 检查可能会过于限制,特别是在共享服务器环境中,多个用户可能属于同一个用户组。safe_mode_gid 选项允许放宽这种检查,改为只比较文件的 GID(用户组 ID)。如果 safe_mode_gid 设置为 On,PHP 在进行文件操作时将只检查文件的 GID 是否与脚本的 GID 相同,而不是检查 UID。配置示例如下:

放宽GID比较

safe_mode_gid = On

限制命令执行函数:所有命令执行函数将被限制只能执行safe_mode_exec_dir指定目录里的程序。

safe_mode_exec_dir = /usr/local/php/exec

设置包含目录:通过safe_mode_include_dir设置允许访问的目录前缀。

safe_mode_include_dir = /dir/incl/

设置允许修改的环境变量:用户只能修改以指定前缀开头的环境变量。

safe_mode_allowed_env_vars = PHP

保护特定的环境变量:用户不能用putenv()来改变这些环境变量,多个用,隔开,例如LD_LIBRARY_PATH这个环境变量用户无法用putenv修改,即时safe_mode_allowed_env_vars设置可以修改也不能修改:

safe_mode_protected_env_vars = LD_LIBRARY_PATH

网友回复

我知道答案,我要回答