阅读量:0
在Linux下配置和优化PHP-FPM(FastCGI Process Manager)可以显著提高PHP应用程序的性能。以下是一些常见的配置和优化步骤:
1. 安装PHP-FPM
首先,确保你已经安装了PHP-FPM。你可以使用包管理器来安装,例如在Ubuntu上:
sudo apt-get update
sudo apt-get install php-fpm
2. 配置PHP-FPM
PHP-FPM的配置文件通常位于/etc/php/{version}/fpm/pool.d/www.conf,其中{version}是你的PHP版本号。
2.1 基本配置
- listen: 指定PHP-FPM监听的地址和端口。通常设置为
/run/php/php{version}-fpm.sock或127.0.0.1:9000。listen = /run/php/php{version}-fpm.sock - listen.owner 和 listen.group: 设置监听套接字的属主和属组。
listen.owner = www-data listen.group = www-data - user 和 group: 设置PHP-FPM进程的用户和组。
user = www-data group = www-data
2.2 进程管理
- pm: 进程管理模式,可选
dynamic、ondemand、static。pm = dynamic pm.max_children = 50 pm.start_servers = 5 pm.min_spare_servers = 5 pm.max_spare_servers = 35 - pm.max_requests: 每个子进程在重启前处理的请求数。
pm.max_requests = 500
2.3 性能优化
- request_terminate_timeout: 设置请求超时时间。
request_terminate_timeout = 0 - slowlog: 慢查询日志。
slowlog = /var/log/php-fpm/www-slow.log slowlog_latency = 10s
3. 调整PHP配置
编辑/etc/php/{version}/fpm/php.ini文件进行PHP配置优化。
3.1 内存限制
- memory_limit: 设置每个PHP进程的内存限制。
memory_limit = 256M
3.2 执行时间
- max_execution_time: 设置脚本的最大执行时间。
max_execution_time = 30
3.3 错误日志
- error_log: 设置错误日志文件。
error_log = /var/log/php-fpm/error.log
4. 启动和监控PHP-FPM
启动PHP-FPM服务:
sudo systemctl start php{version}-fpm
sudo systemctl enable php{version}-fpm
监控PHP-FPM状态:
sudo systemctl status php{version}-fpm
5. 使用Nginx或Apache作为反向代理
如果你使用Nginx或Apache作为Web服务器,确保正确配置它们以使用PHP-FPM。
Nginx配置示例
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;
}
}
Apache配置示例
:80 >
ServerName example.com
DocumentRoot /var/www/html
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
SetHandler "proxy:unix:/run/php/php{version}-fpm.sock|fcgi://localhost"
通过以上步骤,你可以有效地配置和优化PHP-FPM,从而提升你的PHP应用程序的性能。
以上就是关于“Linux下php-fpm如何配置优化”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm