PHP启动:无法加载动态库php_curl.dll

时间:2014-11-11 03:43:48

标签: php apache curl

我无法让cURL在我的某台服务器上运行。我有其他设置完全像这样,他们正在工作。以下是系统日志中的错误消息:

PHP Fatal error: Call to undefined function curl_init()

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_curl.dll' - The specified module could not be found. in Unknown on line 0

我整天都在研究这一切,但没有任何效果。这是服务器的当前状态:

  • php.ini在C:\ php \
  • php_curl.dll位于C:\ php \ ext \
  • libeay32.dll和ssleay32.dll位于C:\ php \
  • extension = php_curl.dll在php.ini
  • 中取消注释
  • 环境变量PATH =%SystemRoot%\ system32;%SystemRoot%;%SystemRoot%\ System32 \ Wbem;%SYSTEMROOT%\ System32 \ WindowsPowerShell \ v1.0 \; C \ php; C:\ php \ ext; C :\ Apache24 \ BIN
  • phpinfo()显示C:\ php \ php.ini是正在使用的配置文件
  • php.ini extension_dir =“C:\ php \ ext”
  • Apache来自here
  • PHP来自here
  • 操作系统是Windows Server 2008 R2 Datacenter

我已经重启几次了。其他扩展名从扩展目录加载。我也尝试重新下载PHP zip文件并用新下载的zip文件的内容替换C:\ php。当我更新PHP和Apache时,我在不同的服务器上遇到了这个问题。用一个新的zip文件副本替换C:\ php确实修复了它,但它现在没有用。

我很乐意提供您可能需要的任何其他信息。

感谢。


phpinfo()配置命令

cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo"

7 个答案:

答案 0 :(得分:1)

糟糕,PATH中的“C \ php”缺少一个冒号。将其更改为“C:\ php”,现在可以使用了。我觉得它会变成这样的东西......哦,好吧。

答案 1 :(得分:1)

我们在环境中遇到过类似的问题。

我们卸载了Apache并使用以下命令再次安装它:

c:\Apache\bin httpd -k uninstall 
c:\Apache\bin httpd -k install 

和魔术......问题解决了......

答案 2 :(得分:0)

无法加载动态库'C:\ php \ ext \ php_curl.dll'

正确答案应该可行,因为错过了c:\ php的环境路径。所以只需添加

在控制面板中 - >搜索 - >高级系统设置并使用环境变量按钮。

在System Variables下,找到Path添加c:\ php文件夹(或任何路径)并重启Apache。

答案 3 :(得分:0)

在PHP 7.3中:

  1. extension = php_curl
  2. libssh2.dll C:\php复制到C:\apache\bin
  3. C:\php libcrypto-*。dll libssl-*。dll 复制到C:\apache\bin(如果不存在)< / li>

答案 4 :(得分:0)

在PHP 7.4中:

这是与Windows相关的问题,如果您使用的是Apache2.x + Php,则诀窍在于使用LoadFile来强制加载CURL如我的Guide中所述。您无需在机器上运行CURL即可使用奇怪的事物或仪式,只需编辑httpd.conf并添加以下内容即可:

# load CURL library on Windows
LoadFile "${SRVROOT}/php/libssh2.dll"

希望这会有所帮助。

答案 5 :(得分:0)

在我的情况下,问题在于我要获取另一个C. \ Windows \ System32中的路径之前在PATH中的curl.exe文件

答案 6 :(得分:-5)

您还需要更改curl.dll版本,您必须覆盖wamp服务器附带的版本。 C:/瓦帕/ bin中/ PHP /分机

您可以从此链接下载正确的版本

的http:// <强> www.mediafire.com/download/3ay381k3cq59cm2/php_curl-5.4.3-VC9-x64.zip

我希望它适合你!

字体: 的 http://forum.wampserver.com/read.php?2,85716,85932