在CentOS上优化PHP配置以提高网站性能,可以遵循以下步骤:
首先,确保你的系统和所有相关软件包都是最新的。
sudo yum update -y
安装PHP及其常用模块。你可以根据需要选择安装哪些模块。
sudo yum install -y php php-mysqlnd php-gd php-mbstring php-xml php-pear php-bcmath php-zip
如果你使用的是PHP-FPM(FastCGI Process Manager),可以对其进行优化。
sudo vi /etc/php-fpm.d/www.conf
(可用内存 - 1G) / 单个进程内存大小。sudo systemctl restart php-fpm
编辑PHP的配置文件 php.ini 进行优化。
; 增加内存限制
memory_limit = 256M
; 增加执行时间限制
max_execution_time = 300
; 启用OPcache
opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
; 启用Gzip压缩
gzip = On
; 启用输出缓存
output_buffering = On
implicit_flush = Off
; 禁用危险函数
disable_functions = exec,passthru,shell_exec,system
; 调整文件上传大小限制
upload_max_filesize = 50M
post_max_size = 50M
sudo vi /etc/php.ini
确保你的Web服务器(如Nginx或Apache)已经正确配置并与PHP-FPM集成。
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<FilesMatch \.php$>
SetHandler "proxy:fcgi://unix:/run/php-fpm/www.sock"
</FilesMatch>
</VirtualHost>
使用工具如 top, htop, vmstat 等监控服务器资源使用情况,并根据实际情况调整PHP和Web服务器的配置。
考虑使用Redis或Memcached等缓存系统来缓存数据库查询结果和页面片段,进一步减少服务器负载。
通过以上步骤,你可以显著提高CentOS上PHP网站的性能。记得在每次更改配置后重启相关服务以应用更改。