首页主机资讯Linux中php-fpm与Nginx的搭配使用技巧

Linux中php-fpm与Nginx的搭配使用技巧

时间2025-10-29 13:38:04发布访客分类主机资讯浏览1306
导读:在Linux系统中,PHP-FPM(FastCGI Process Manager)与Nginx的搭配使用可以提供高性能的PHP处理能力。以下是一些搭配使用技巧: 1. 安装和配置PHP-FPM 首先,确保你已经安装了PHP-FPM。你可以...

在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-cgtophtop监控PHP-FPM进程的资源使用情况。
  • 查看日志:检查Nginx和PHP-FPM的日志文件,通常位于/var/log/nginx/error.log/var/log/php7.x-fpm.log

通过以上步骤和技巧,你可以有效地搭配使用PHP-FPM和Nginx,提升Web应用的性能和稳定性。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux中php-fpm与Nginx的搭配使用技巧
本文地址: https://pptw.com/jishu/737728.html
如何在Linux上配置php-fpm的虚拟主机 如何解决Linux中php-fpm的启动失败问题

游客 回复需填写必要信息