共计 883 个字符,预计需要花费 3 分钟才能阅读完成。
PHP 启动时将读取配置文件(php.ini)。对于 PHP 的服务器模块版本,仅在启动 Web 服务器时才发生一次。对于 CGI 和 CLI 版本,它会在每次调用时发生。
如何配置 php.ini 以提高 Web 服务器的安全性
1、禁用不需要的 PHP 函数
此选项可以设置禁止使用哪些 PHP 函数。PHP 中的某些功能仍然存在很大风险。如果允许执行这些功能,那么当 PHP 程序容易受到攻击时,损失会非常严重!下面我们给出建议的禁用功能设置:
disable_functions = phpinfo,passthru,exec,system,popen,chroot,escapeshellcmd,escapeshellarg,shell_exec,proc_open,proc_get_status
注意:如果您的服务器包含一些用于 CentOS 系统状态检测的 PHP 程序,请不要禁用 shell_exec,proc_open,proc_get_status 和其他功能。
2、PHP 脚本的执行时间
max_execution_time = 30
此选项设置 PHP 程序的最大执行时间。如果请求了 PHP 脚本,而 PHP 脚本未能在 max_execution_time 时间内完成,则 PHP 将不会继续执行,而是直接向客户端返回超时错误。此选项不需要特别保留默认设置 30 秒。如果您的 PHP 脚本确实需要很长的执行时间,则可以适当地增加此时间设置。
3、PHP 脚本的内存使用情况
memory_limit = 8M
此选项指定 PHP 脚本处理可以占用的最大内存。默认值为 8MB。如果服务器内存大于 1GB,则可以将此选项设置为 12MB,以提高 PHP 脚本处理效率。
4、PHP 全局函数声明
register_globals = Off
Internet 上许多有关 PHP 设置的文章都建议将此选项设置为 On。实际上,这是一种非常危险的设置方法,可能会导致严重的安全问题。如果没有特殊需要,强烈建议保留默认设置!
5、PHP 上传文件大小限制
upload_max_filesize = 2M
此选项设置 PHP 允许的最大上传文件大小。默认值为 2MB。可以根据实际应用要求适当增加此设置。
: