在 Windows 上启动 PHP-FPM 的步骤相对简单,但需要一些手动配置。以下是详细步骤:

### 1. **确保 PHP 已正确安装**
1. 从 [PHP 官方网站](https://www.php.net/downloads) 下载适用于 Windows 的 ZIP 包(推荐下载 **Thread Safe** 版本)。
2. 解压到一个目录,例如 `C:\php`。
3. 确保 `php.exe` 可以正常运行。在命令提示符中运行以下命令:
   “`bash
   C:\php\php.exe -v
   “`
   如果看到 PHP 版本信息,则说明 PHP 已正确安装。

### 2. **配置 PHP-FPM**
PHP-FPM 在 Windows 下没有默认的 `php-fpm.conf` 文件,因此需要手动创建或配置。

1. **创建 `php-fpm.conf` 文件**:
   – 在 `C:\php` 目录下创建一个名为 `php-fpm.conf` 的文件。
   – 添加以下基本配置内容:
     “`ini
     [global]
     pid = run/php-fpm.pid

     [www]
     listen = 127.0.0.1:9000
     listen.allowed_clients = 127.0.0.1
     user = nobody
     group = nobody
     pm = dynamic
     pm.max_children = 5
     pm.start_servers = 2
     pm.min_spare_servers = 1
     pm.max_spare_servers = 3
     “`
   – 说明:
     – `listen`:指定 PHP-FPM 监听的地址和端口。
     – `listen.allowed_clients`:允许访问 PHP-FPM 的客户端。
     – `pm`:进程管理方式(`dynamic` 或 `static`)。
     – `pm.max_children`:最大子进程数。
     – `user` 和 `group`:运行 PHP-FPM 的用户和组(Windows 下可以忽略)。

2. **配置 `php.ini` 文件**:
   – 找到 `php.ini` 文件(通常在 `C:\php` 目录下)。
   – 确保以下配置已启用:
     “`ini
     extension_dir = “C:\php\ext”  ; 指定扩展库目录
     “`
   – 启用必要的扩展(如 `mysqli`、`pdo_mysql` 等):
     “`ini
     extension=mysqli
     extension=pdo_mysql
     “`

### 3. **启动 PHP-FPM**
在命令提示符中,导航到 PHP 安装目录,运行以下命令启动 PHP-FPM:
“`bash
C:\php\php-cgi.exe -b 127.0.0.1:9000 -c C:\php\php.ini
“`
– 参数说明:
  – `-b 127.0.0.1:9000`:指定监听地址和端口。
  – `-c C:\php\php.ini`:指定 `php.ini` 配置文件路径。

如果看到命令提示符窗口保持打开状态且没有报错,说明 PHP-FPM 已成功启动。

### 4. **配置 Nginx 以使用 PHP-FPM**
编辑 Nginx 的配置文件(`nginx.conf`),添加以下内容:
“`nginx
server {
    listen 80;
    server_name localhost;
    root C:/wwwroot;  # 替换为你的网站根目录

    location / {
        index index.php index.html;
    }

    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;  # PHP-FPM 监听地址
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}
“`

### 5. **测试 PHP-FPM**
1. 在网站根目录(如 `C:\wwwroot`)中创建一个名为 `info.php` 的文件,内容如下:
   “`php
   <?php
   phpinfo();
   ?>
   “`
2. 打开浏览器,访问 `http://localhost/info.php`。
3. 如果看到 PHP 信息页面,则说明 PHP-FPM 已成功启动且 Nginx 配置正确。

### 注意事项
1. **保持 PHP-FPM 运行**:
   – PHP-FPM 运行时会占用命令提示符窗口。如果关闭窗口,PHP-FPM 会停止运行。
   – 可以使用任务管理器查看 `php-cgi.exe` 是否在运行。

2. **后台运行 PHP-FPM**:
   – 如果需要后台运行 PHP-FPM,可以使用 Windows 任务计划程序或第三方工具(如 `nssm`)将其作为服务运行。

3. **防火墙设置**:
   – 如果遇到连接问题,请确保防火墙允许本地端口 `9000` 的通信。

通过以上步骤,你可以在 Windows 上成功启动 PHP-FPM 并与 Nginx 配合运行。