无法在Linux上的PHP中启用cURL支持

无法在Linux上的PHP中启用cURL支持,php,linux,curl,Php,Linux,Curl,cURL不会出现在phpinfo()中,即使在确保以下条件后,也会在PHP脚本中失败: curl.so确实存在于/usr/lib/php/modules/curl.so以及其他成功运行的php模块中 /usr/lib/php/modules/curl.so是系统中唯一可以找到curl.so的地方 extension=curl.so在php.ini中未注释 /etc/php/php.ini是系统上唯一可以找到php.ini的地方 我重新启动了我的Web服务器好几次 phpinfo Configu

cURL不会出现在phpinfo()中,即使在确保以下条件后,也会在PHP脚本中失败:

  • curl.so确实存在于/usr/lib/php/modules/curl.so以及其他成功运行的php模块中

  • /usr/lib/php/modules/curl.so是系统中唯一可以找到curl.so的地方

  • extension=curl.so在php.ini中未注释

  • /etc/php/php.ini是系统上唯一可以找到php.ini的地方

  • 我重新启动了我的Web服务器好几次

  • phpinfo Configure命令显示:'--with curl=shared'

但是,显示“curl”设置(通常在其他系统的phpinfo中可以找到)的蓝色大方框没有出现。此外,函数_exists('curl_init')在PHP内部返回false

我一定错过了什么。。。但是什么呢

非常感谢你的帮助

dl("curl.so");

即使有到库的完整路径,也要尝试这样做。还要检查这在命令行上是否有效。如果.so与您的PHP解释器不兼容(或者损坏),那么您将不会在phpinfo脚本的输出中看到任何消息。如果PHP是从PHP.ini引用的,则PHP会以静默方式失败。任何问题都只会在控制台或Apache错误日志中出现。

请检查phpinfo()输出是否显示php.in的路径,如/etc/php/php.ini?curl=shared表示它将在系统中查找curl的库。您是否确保curl和curl库安装在系统级别?也,php.ini中的扩展目录是否指向正确的位置?@anubhava:Loaded配置文件显示/etc/php/php。ini@Charles:我通过Arch Linux软件包管理器安装了curl和php curl:pacman-S curl和pacman-S php curl,我还明确地为它们列出的所有依赖项安装了curl和php curl,以防出现奇怪的情况阻止它们自动解析依赖项。致命错误:调用未定义的函数dl()。。。位于的PHP文档说“这个函数已经从PHP5.3中的一些SAPI中删除了。”是的。使用CLI版本进行尝试(出于我们这里的测试目的)。这仍然是允许的。好吧,我明白了:PHP警告:模块'curl'已经加载到第0行的Unknown中。这很奇怪。测试
var_转储(函数_存在(“curl_init”)。难以置信。我对服务器进行了软重启,它立即工作了。自我提示:永远不要信任/etc/rc.d/nginx重启