加油
努力

如何在TencentOS Server 3.1中启动并设置php-fpm开机自启?

在 TencentOS Server 3.1(基于 CentOS/RHEL 8/9 体系)中,启动并设置 php-fpm开机自启通常使用 systemd服务管理器。以下是详细步骤:


✅ 前提条件

确保已安装 PHP-FPM。可通过以下命令检查是否已安装:

rpm -qa | grep php-fpm
# 或
dnf list installed | grep php-fpm

如果未安装,请执行:

sudo dnf install php-fpm -y

注意:TencentOS Server 3.1 默认仓库中的 PHP 版本可能为 7.4 或更高,具体取决于启用哪些模块(如 appstreamcrb 等)。如需特定版本,请提前配置好对应的软件源。


🔧 步骤一:启动 php-fpm 服务

sudo systemctl start php-fpm

验证是否正在运行:

sudo systemctl status php-fpm

预期输出应包含 active (running)


🔄 步骤二:设置开机自启

sudo systemctl enable php-fpm

该命令会创建符号链接,使系统在启动时自动启动 php-fpm 服务。

再次确认状态:

sudo systemctl is-enabled php-fpm

应返回 enabled


📝 可选:配置 php-fpm 监听方式

默认情况下,php-fpm 通过 Unix socket 或 TCP 端口监听。常见配置位于:

/etc/php-fpm.d/www.conf

例如,若需通过 TCP 9000 端口监听(常用于 Nginx 反向X_X),确保以下行未被注释且正确:

listen = 127.0.0.1:9000

修改后重启服务生效:

sudo systemctl restart php-fpm

🔍 故障排查

  • 服务无法启动?

    sudo journalctl -u php-fpm -n 50 --no-pager

    查看日志定位错误(如权限问题、端口冲突等)。

  • SELinux 阻止?
    若启用 SELinux,可能需要调整上下文:

    sudo setsebool -P httpd_fcgid_connect_to_all 1
    # 或根据具体错误调整策略
  • 防火墙允许?(若使用 TCP 监听)

    sudo firewall-cmd --permanent --add-port=9000/tcp
    sudo firewall-cmd --reload

✅ 总结命令一览

# 安装(如需要)
sudo dnf install php-fpm -y

# 启动
sudo systemctl start php-fpm

# 开机自启
sudo systemctl enable php-fpm

# 验证
sudo systemctl status php-fpm
sudo systemctl is-enabled php-fpm

完成以上操作后,php-fpm 将在每次系统启动时自动运行。

云服务器