昨天我帖子的后续内容(使用PHP启用cURL)
问题是PHP无法加载php_curl.dll。我尝试了几个步骤,包括取消注释extension=php_curl.dll,确保路径中的依赖关系libeay32.dll和ssleay32.dlleixst,重新下载php_curl.dll,替换旧的文件以及最后将文件复制到我的System32文件夹中。
extension=php_curl.dll
libeay32.dll
ssleay32.dll
我正在使用Apache 2.2和PHP 5.4.14。我使用它们各自的软件包进行安装;我没有使用XAMP或WAMP。我正在使用Windows 7 64位。
任何帮助将不胜感激。
libeay32.dll并且ssleay32.dll必须路径可访问php_curl.dll才能成功加载。
php_curl.dll
但是将它们复制到Apache ServerRoot,Apache \bin\,Window \System32\或什至更糟糕的Windows主目录中是一个很糟糕的做法,甚至可能不适用于更新的PHP版本。
ServerRoot
\bin\
\System32\
正确的方法是将PHP路径添加到Windows Path变量。
Path
Control Panel -> System
WIN
R
SystemPropertiesAdvanced
C:\PHP;
更新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:的整个目录结构时可能需要一些时间才能完成。