在Linux系统中,php.ini
文件是PHP配置的核心文件,它包含了许多关于PHP运行时的设置
safe_mode
:开启安全模式可以防止执行恶意代码。将其设置为On
,然后在safe_mode_allowed_classes
中列出允许执行的类。
safe_mode = On safe_mode_allowed_classes = "mysqli,pdo_mysql"
disable_functions
:禁用不需要的PHP函数可以减少潜在的安全风险。例如,可以禁用exec()
、system()
等危险函数。
disable_functions = "exec,system,passthru,shell_exec,popen,curl,fsockopen,file_get_contents,mkdir,rmdir,rename,unlink,chmod,chown,chgrp,date,time,localtime,gmtime,isset,empty,is_array,is_object,is_resource,is_string,is_int,is_float,is_bool,is_callable,assert"
upload_tmp_dir
:指定临时文件夹用于文件上传。确保该目录具有适当的权限,以防止未经授权的访问。
upload_tmp_dir = "/path/to/tmp"
open_basedir
:限制PHP可以访问的文件和目录。将需要访问的目录添加到open_basedir
中。
open_basedir = "/var/www/html:/tmp"
display_errors
:在生产环境中,建议关闭错误显示,以防止敏感信息泄露。将其设置为Off
。
display_errors = Off
log_errors
:开启错误日志记录,以便在出现问题时进行排查。
log_errors = On error_log = "/var/log/php_errors.log"
memory_limit
:限制PHP脚本的最大内存使用量,以防止内存泄漏或资源耗尽。
memory_limit = 128M
max_execution_time
:设置PHP脚本的执行时间上限,以防止长时间运行的脚本占用过多资源。
max_execution_time = 30
post_max_size
和upload_max_filesize
:限制POST请求的大小和上传文件的大小,以防止大文件上传导致的问题。
post_max_size = 10M upload_max_filesize = 10M
请注意,这些设置仅作为示例,您应根据实际需求和环境进行调整。在进行更改后,请确保重启Web服务器以使更改生效。