温馨提示×

Linux环境下PHP-FPM如何部署

小樊
34
2025-12-06 09:10:30
栏目: 编程语言

在Linux环境下部署PHP-FPM(FastCGI Process Manager)通常涉及以下几个步骤:

  1. 安装PHP和PHP-FPM: 首先,你需要安装PHP以及PHP-FPM。这可以通过包管理器来完成,例如在基于Debian的系统上,你可以使用以下命令:

    sudo apt update
    sudo apt install php-fpm php-cli
    

    在基于Red Hat的系统上,你可以使用:

    sudo yum install php-fpm php-cli
    
  2. 配置PHP-FPM: 安装完成后,你需要配置PHP-FPM。配置文件通常位于/etc/php/{version}/fpm/目录下,其中{version}是你的PHP版本号。主要的配置文件是php-fpm.conf,而池(pool)配置文件通常位于/etc/php/{version}/fpm/pool.d/目录下,例如www.conf

    你可以根据需要编辑这些配置文件。例如,你可能需要修改监听地址和端口,以便Web服务器可以与PHP-FPM通信:

    ; 在www.conf中
    listen = /run/php/php7.4-fpm.sock ; 对于Unix socket
    ; 或者
    listen = 127.0.0.1:9000 ; 对于TCP/IP socket
    
  3. 启动并启用PHP-FPM服务: 配置完成后,你可以启动PHP-FPM服务,并设置为开机自启:

    sudo systemctl start php{version}-fpm
    sudo systemctl enable php{version}-fpm
    

    确保服务正在运行:

    sudo systemctl status php{version}-fpm
    
  4. 配置Web服务器: 你需要配置你的Web服务器(如Nginx或Apache)以便将PHP请求传递给PHP-FPM。

    • 对于Nginx,你需要在server块中添加一个location块来处理.php文件:

      location ~ \.php$ {
          include snippets/fastcgi-php.conf;
          fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 或者使用TCP/IP地址
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          include fastcgi_params;
      }
      
    • 对于Apache,你需要启用proxy_fcgi模块,并配置一个ProxyPass指令来将请求转发到PHP-FPM:

      <FilesMatch \.php$>
          SetHandler "proxy:fcgi://localhost:9000"
      </FilesMatch>
      
  5. 测试PHP-FPM: 创建一个简单的PHP文件(例如info.php),并将其放置在你的Web服务器文档根目录下:

    <?php
    phpinfo();
    

    访问这个文件(例如通过浏览器访问http://your_server_ip/info.php),如果一切配置正确,你应该能看到PHP的信息页面。

请注意,上述步骤中的版本号{version}需要替换为你实际安装的PHP版本号。此外,根据你的具体需求和系统配置,可能还需要进行其他调整。

0