阅读量:3
在Linux系统中,PHP-FPM(FastCGI Process Manager)与Nginx的搭配使用可以提供高性能的PHP处理能力。以下是一些搭配使用技巧:
1. 安装和配置PHP-FPM
首先,确保你已经安装了PHP-FPM。你可以使用包管理器来安装,例如在Ubuntu上:
sudo apt-get update
sudo apt-get install php-fpm
2. 配置PHP-FPM
编辑PHP-FPM的配置文件,通常位于/etc/php/7.x/fpm/pool.d/www.conf(根据你的PHP版本调整路径)。确保以下配置项正确设置:
; 监听的socket或端口
listen = /run/php/php7.x-fpm.sock ; 使用socket
; 或者
; listen = 127.0.0.1:9000 ; 使用端口
; 用户和组
user = www-data
group = www-data
; PM模式
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
3. 配置Nginx
编辑Nginx的配置文件,通常位于/etc/nginx/sites-available/default。确保以下配置项正确设置:
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/php7.x-fpm.sock; ; 使用socket
; 或者
; fastcgi_pass 127.0.0.1:9000; ; 使用端口
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
4. 启动和启用服务
启动并启用PHP-FPM和Nginx服务:
sudo systemctl start php7.x-fpm
sudo systemctl enable php7.x-fpm
sudo systemctl start nginx
sudo systemctl enable nginx
5. 性能优化
- 调整PHP-FPM进程数:根据服务器的CPU和内存资源,适当调整
pm.max_children等参数。 - 使用OPcache:在PHP配置文件中启用OPcache,可以显著提高PHP脚本的执行速度。
opcache.enable=1 opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 - Nginx缓存:配置Nginx缓存静态文件,减少对PHP-FPM的请求。
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off; server { ... location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 30d; add_header Cache-Control "public, no-transform"; } location / { ... proxy_cache my_cache; proxy_pass http://unix:/run/php/php7.x-fpm.sock; proxy_cache_valid 200 302 10m; proxy_cache_valid 404 1m; } }
6. 监控和日志
- 监控PHP-FPM:使用
systemd-cgtop或htop监控PHP-FPM进程的资源使用情况。 - 查看日志:检查Nginx和PHP-FPM的日志文件,通常位于
/var/log/nginx/error.log和/var/log/php7.x-fpm.log。
通过以上步骤和技巧,你可以有效地搭配使用PHP-FPM和Nginx,提升Web应用的性能和稳定性。
以上就是关于“Linux中php-fpm与Nginx的搭配使用技巧”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm