在CentOS系统中配置PHP时,有一些关键的配置项需要设置以确保PHP应用程序的安全性和性能。以下是一些常见的PHP配置项及其建议设置:
php.ini 文件中的基本配置error_reporting: 设置错误报告级别。error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
display_errors: 控制是否在浏览器中显示错误。display_errors = Off
log_errors: 控制是否将错误记录到日志文件。log_errors = On
error_log = /var/log/php_errors.log
memory_limit: 设置脚本允许使用的最大内存量。memory_limit = 128M
max_execution_time: 设置脚本的最大执行时间。max_execution_time = 30
upload_max_filesize: 设置上传文件的最大大小。upload_max_filesize = 2M
post_max_size: 设置POST请求的最大大小。post_max_size = 8M
date.timezone: 设置时区。date.timezone = Asia/Shanghai
allow_url_fopen: 控制是否允许通过URL打开文件。allow_url_fopen = Off
allow_url_include: 控制是否允许通过URL包含文件。allow_url_include = Off
open_basedir: 限制PHP脚本可以访问的目录。open_basedir = /var/www/html/:/tmp/
disable_functions: 禁用危险函数。disable_functions = eval,exec,passthru,shell_exec,system
opcache.enable: 启用OPcache以提高PHP性能。opcache.enable = 1
opcache.memory_consumption = 128
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 4000
opcache.revalidate_freq = 60
output_buffering: 启用输出缓冲。output_buffering = On
zlib.output_compression: 启用zlib压缩输出。zlib.output_compression = On
mysqli.default_socket: 设置MySQLi默认套接字文件路径。mysqli.default_socket = /var/lib/mysql/mysql.sock
pdo_mysql.default_socket: 设置PDO MySQL默认套接字文件路径。pdo_mysql.default_socket = /var/lib/mysql/mysql.sock
session.gc_maxlifetime: 设置会话的最大生命周期。session.gc_maxlifetime = 1440
session.cookie_lifetime: 设置会话cookie的生命周期。session.cookie_lifetime = 1440
修改完php.ini文件后,需要重启PHP-FPM或Apache服务以使更改生效。
sudo systemctl restart php-fpm
# 或者
sudo systemctl restart httpd
请根据实际需求调整这些配置项。如果你使用的是特定的PHP版本或框架,可能还需要额外的配置。