源码安装php怎么启动_源码安装php启动服务与验证法【教程】

源码安装PHP后需手动启动PHP-FPM并与Web服务器协同工作。1. 确认PHP安装路径并执行php -v验证解析器;2. 启动PHP-FPM服务,检查配置文件及监听端口9000;3. 配置Nginx转发PHP请求,创建phpinfo测试页验证运行状态;4. 使用netstat和ps命令检查服务进程与端口监听情况。

源码安装 PHP 后,它并不会像 yum 或 apt 安装那样自动注册为系统服务。因此,启动和验证需要手动操作或配合 Web 服务器(如 Nginx 或 Apache)来完成。下面详细介绍源码安装 PHP 后如何启动服务以及验证是否正常运行。

1. 确认 PHP 安装路径与可执行文件

源码编译安装完成后,PHP 的主程序通常位于你指定的 --prefix 路径下,默认可能是 /usr/local/php

进入安装目录,检查 PHP CLI 是否可用:

  • php -v:查看 PHP 版本信息
  • /usr/local/php/bin/php -v:如果未加入环境变量,使用完整路径测试

若能正常输出版本号,说明 PHP 解析器已正确安装。

2. 启动 PHP-FPM 服务(常用方式)

大多数情况下,PHP 需通过 PHP-FPM(FastCGI 进程管理器)与 Nginx 或 Apache 协同工作。

步骤如下:

  • 找到 PHP-FPM 配置文件:/usr/local/php/etc/php-fpm.conf
  • 确认进程管理配置,例如监听地址(默认一般为 127.0.0.1:9000)
  • 启动 PHP-FPM:
/usr/local/php/sbin/php-fpm

若提示命令找不到,请确认编译时是否启用 FPM:
编译时需包含 --enable-fpm 参数。

可选:将 php-fpm 添加到系统服务(以 systemd 为例):

  1. 创建服务文件:/etc/systemd/system/php-fpm.service
  2. 写入以下内容:
[Unit]
Description=The PHP FastCGI Process Manager
After=network.target

[Service]
ExecStart=/usr/local/php/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
Type=simple
User=www-data
Group=www-data
Restart=always

[Install]
WantedBy=multi-user.target
  1. 重载服务并启动:
  • systemctl daemon-reexec
  • systemctl start php-fpm
  • systemctl enable php-fpm(开机自启)

3. 配合 Nginx 验证 PHP 是否工作

单独启动 PHP-FPM 不足以运行 PHP 页面,还需 Web 服务器转发请求。

配置 Nginx 示例:

server {
    listen 80;
    server_name localhost;
    root /var/www/html;
    index index.php index.html;

    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

在网站根目录创建测试文件 index.php

重启 Nginx 后访问 http://your-server-ip/index.php,若显示 PHP 信息页面,则说明安装与服务配置成功。

4. 检查端口与进程状态

确认 PHP-FPM 是否监听 9000 端口:

  • netstat -tlnp | grep 9000
  • ps aux | grep php-fpm

如果有多个 worker 进程出现,说明服务正在运行。

基本上就这些。源码安装 PHP 更灵活但也更依赖手动配置。只要正确启动 php-fpm 并与 Web 服务器协同,就能稳定运行 PHP 应用。