温馨提示×

centos php配置不支持curl

小樊
41
2026-10-11 16:21:05
栏目: 编程语言

在 CentOS 上 PHP 不支持 curl,通常是 curl 扩展没安装或没启用。下面按常见情况给你一步步排查和解决。


一、先确认问题

1. 查看 php 是否支持 curl

php -m | grep curl

或

php -i | grep -i curl

如果没有任何输出,说明 curl 扩展未启用或未安装。


二、安装 curl 扩展(最常见原因)

✅ CentOS + PHP 来自系统源(php-cli)

yum install php-curl -y

安装完成后重启服务:

# PHP-FPM
systemctl restart php-fpm

# Apache
systemctl restart httpd

✅ CentOS + 使用 Remi 源(常见)

yum install php-pecl-curl -y
# 或(按版本)
yum install php74-php-curl -y

然后:

systemctl restart php74-php-fpm

三、确认 php.ini 是否启用了 curl

编辑 php.ini(位置可能不同):

php --ini

确保没有这一行被注释掉(或存在):

extension=curl

如果有 #,去掉 #:

extension=curl

重启 PHP。


四、编译安装 PHP 的情况(源码)

如果你是 源码编译 PHP,需要重新编译并加上:

--with-curl

示例:

./configure --with-curl
make
make install

五、常见报错及解决

❌ curl.so: cannot open shared object

说明扩展文件不存在或路径不对:

find / -name curl.so

然后在 php.ini 中指定:

extension=/usr/lib64/php/modules/curl.so

❌ Call to undefined function curl_init()

99% 是 curl 扩展没加载,按上面步骤检查。


六、快速自检清单 ✅

  • [ ] 已安装 php-curl
  • [ ] php -m | grep curl 有输出
  • [ ] php.ini 中 extension=curl 已启用
  • [ ] 重启了 PHP 服务

如果你愿意,可以告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • PHP 版本
  • 是 Apache 还是 Nginx + PHP-FPM

我可以给你精确到命令级别的解决方案。

0 踩