我正在尝试让 xmlrpc 扩展在 MAMP (1.8.4) 中为 php5 工作。
我检查了安装的 PHP 5 版本:
$ /Applications/MAMP/bin/php5/bin/php -v
PHP 5.2.11 (cli) (built: Dec 12 2009 13:19:08)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend Technologies
我下载了 PHP 5.2.11 源包,并为 xmlrpc 构建了一个共享库:
$ LIBS=-lresolv ./configure --prefix=/opt --with-xmlrpc=shared
$ make
$ ls modules
xmlrpc.a xmlrpc.la xmlrpc.so
我将这些文件复制到 MAMP 中:
$ cp modules/* /Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/
我将扩展设置添加到 ini 文件中:
$ vi /Applications/MAMP/conf/php5/php.ini
extension=xmlrpc.so
我重新启动了 MAMP:
$ ./bin/stop.sh
$ ./bin/start.sh
当我做一个我发现phpinfo
的唯一参考xmlrpc
是在 PHP Core 部分:
xmlrpc_error_number => 0 => 0
xmlrpc_errors => Off => Off
我正在尝试安装 Moodle,但它仍然告诉我 xmlrpc 扩展不可用。
我是 PHP 新手,所以如果有人能告诉我如何确认扩展是否可用,那就太好了,或者至少有一些关于如何进一步调试的指示。
谢谢。
更新:我找到了 PHP 日志文件,它有以下条目:
[08-Jan-2010 23:37:52] PHP Warning: PHP Startup: Unable to load dynamic \
library '/Applications/MAMP/bin/php5/lib/php/extensions/ \
no-debug-non-zts- 20060613/xmlrpc.so' - (null) in Unknown on line 0