利用Linux PHP-FPM提升網站速度可以通過以下幾個步驟進行配置和優化:
首先,確保你已經安裝了PHP-FPM。你可以使用包管理器來安裝,例如在Ubuntu上:
sudo apt-get update
sudo apt-get install php-fpm
編輯PHP-FPM的配置文件,通常位于 /etc/php/{version}/fpm/pool.d/www.conf
,其中 {version}
是你的PHP版本號。
基本配置:
listen = /run/php/php{version}-fpm.sock
listen.owner = www-data
listen.group = www-data
user = www-data
group = www-data
進程管理:
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
性能優化:
request_terminate_timeout = 0
slowlog = /var/log/php-fpm/www-slow.log
slowlog_latency = 10s
編輯 /etc/php/{version}/fpm/php.ini
文件進行PHP配置優化。
內存限制:
memory_limit = 256M
執行時間:
max_execution_time = 30
錯誤日志:
error_log = /var/log/php-fpm/error.log
啟動PHP-FPM服務并設置為開機自啟:
sudo systemctl start php{version}-fpm
sudo systemctl enable php{version}-fpm
監控PHP-FPM狀態:
sudo systemctl status php{version}-fpm
如果你使用Nginx或Apache作為Web服務器,確保正確配置它們以使用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/php{version}-fpm.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:unix:/run/php/php{version}-fpm.sock|fcgi://localhost"
</FilesMatch>
</VirtualHost>
編輯 php.ini
文件啟用OPcache:
zend_extension=opcache.so
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
使用監控工具如 htop
、vmstat
、iostat
等實時監控系統資源使用情況,并根據實際情況進行調整。
通過以上步驟,你可以有效地配置和優化PHP-FPM,從而提升你的PHP應用程序的性能。根據服務器的實際需求和負載情況,可能還需要進一步調整上述參數以獲得最佳性能。