gpt4 book ai didi

PHP 无法加载 php_curl.dll 扩展

转载 作者:IT王子 更新时间:2023-10-29 01:06:18 26 4
gpt4 key购买 nike

我昨天的帖子的跟进 ( Enabling cURL with PHP )

问题是 PHP 无法加载 php_curl.dll。我已经尝试了几个步骤,包括取消注释 extension=php_curl.dll,确保路径中的依赖项 libeay32.dllssleay32.dll eixst , 重新下载 php_curl.dll,替换旧的,最后将文件复制到我的 System32 文件夹中。

我使用的是 Apache 2.2 和 PHP 5.4.14。我使用它们各自的软件包安装了它们;我没有使用 XAMP 或 WAMP。我使用的是 Windows 7 64 位。

如有任何帮助,我们将不胜感激。

最佳答案

libeay32.dllssleay32.dll 必须是路径可访问的,php_curl.dll 加载才能成功。

但是将它们复制到 Apache 的 ServerRoot、Apache 的 \bin\、Window 的 \System32\,甚至更糟的是复制到 Windows 主目录是一个糟糕的 hack,甚至可能不适用于较新的 PHP 版本。

正确的做法是将 PHP 路径添加到 Windows Path 变量中。

  1. 控制面板 -> 系统中点击高级系统设置或按WIN+R并输入SystemPropertiesAdvanced
  2. 点击环境变量按钮。
  3. 系统变量 下,您会找到Path 变量。对其进行编辑并在其前面添加 C:\PHP; - 或者您的 PHP 文件夹的任何路径。
    (提示:如果您的 PHP 文件夹包含类似 C:\Program Files\PHP 的空格,您可能需要在此处使用短文件名形式,即 C:\Progra~1\PHP.)
  4. 然后完全停止 Apache 并重新启动它(简单的重启可能还不够)。

2017-05 更新:
我将上面的说明更改为使用 PHP 路径添加 Path 变量而不是附加 到它。这确保使用 PHP 路径中的 DLL 而不是系统其他路径中的任何其他(过时的)版本。

2018-04 更新:
如果您已经选择了错误的方式并将任何 PHP DLL 复制到 Apache 或 Windows 路径,那么我强烈建议您再次删除它们!如果不这样做,您以后尝试更新 PHP 时可能会遇到麻烦。如果新的 PHP 版本带来了这些 DLL 的新版本,但您的旧 DLL 仍然存在于系统或 Web 服务器路径中,则可能会首先找到这些旧 DLL。这肯定会阻止 PHP 解释器启动。此类错误可能很难理解和解决。所以最好现在清理并从 Windows 和 Apache 路径中删除任何提到的 DLL(如果您将它们复制到那里)。
(感谢@EdmundTam 和@WasimA. 在评论中指出这个问题!)

2019-10 更新:
提示:要查找这些 DLL 的所有副本并检查您是否将它们放在了错误的文件夹中,您可以在 Windows 命令提示符窗口中使用以下命令:

dir c:\libeay32.dll /s
dir c:\ssleay32.dll /s

请注意,这些命令可能需要一些时间才能完成,因为它们会搜索系统驱动器 C: 的整个目录结构。

2020-08 年更新:
如果您的 PHP 文件夹包含空格(即 C:\Program Files\PHP),您可能需要在第 3 步的 Path 变量中使用短文件名形式(即 C:\Progra~1\PHP).感谢@onee 的提示!

关于PHP 无法加载 php_curl.dll 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16424117/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com