1

因此,我尝试了所有可以在网上找到的解决方案,但似乎没有任何效果。我正在尝试启动我的第一个 Facebook 应用程序。我正在运行 Apache 2.4。我手动将 PHP 5.4.11 安装到 C:\php。我更新了 C:\php\php.ini 将 extension_dir 更改为

extension_dir = "c:\php\ext"

并删除前面的分号

extension=php_curl.dll

我还在 C:\Windows libeay32.dllssleay32.dllC:\Windows\System32、C:\php、C:\php\ext、C:\Apache24 和 C:\Apache24\bin 中添加了和。所有这些目录都在 PATH 中。当我运行 phpinfo() 时,那里根本没有列出 CURL。在所有更改之后,我已经停止并重新启动了 Apache。没运气。我仍然收到错误

Fatal error:
Uncaught exception 'Exception' with message 
'Facebook needs the CURL PHP extension.' in C:\Users\...\sdk\src\base_facebook.php:19 
Stack trace: 
#0 C:\Users\...\sdk\src\facebook.php(18): require_once() 
#1 C:\Users\...\index.php(46): require_once('C:\Users\Jew\Do...') 
#2 {main} thrown in C:\Users\...\sdk\src\base_facebook.php on line 19

编辑#1:
另外,我没有使用 WAMP 服务器。

编辑#2:
我添加了 mod_sslhttpd.conf像这样:LoadModule ssl_module modules/mod_ssl.so

现在phpinfo()显示

SSL: Supported

OpenSSL support: disabled (install ext/openssl)

编辑#3: 我刚刚在我的 Apache 中发现了以下错误error.log

PHP Warning:  PHP Startup: Unable to load dynamic library 'c:\\php\\ext\\php_curl.dll' - %1 is not a valid Win32 application.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'c:\\php\\ext\\php_openssl.dll' - %1 is not a valid Win32 application.\r\n in Unknown on line 0

编辑#4: 我尝试过使用 mod_ssl,但是 apache 日志给出了与加载 curl 相同的错误。我已经把所有的东西都拿出来了。

我还尝试使用 anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows 的php_curl.dll5.4.13 版本以及PHP 5.4.11 线程安全版本附带的原始版本。

4

2 回答 2

2

总而言之(如果我没有错过任何细节)你有这个:

  • PHP 版本 5.4.11,32 位
  • php_curl.dll 版本 5.4.13,64 位

那是行不通的。鉴于您有一台 64 位机器,我建议您也使用 anindya.com 的 PHP 版本,以便 PHP 和 curl 匹配。在此类站点上,您还可以找到 64 位 Apache 版本。

或者,使用所有内容的 32 位版本。

于 2013-02-21T08:41:20.040 回答
2

对于 64 位 W7 使用 Apache 安装 32 位 PHP Curl,您可以尝试将 php_curl.dll、libeay32.dll 和 ssleay32.dll 复制到 C:\Windows\SysWOW64。

于 2014-08-31T21:06:38.700 回答