Memcached安装在MAMP 3.0.3上的PHP 5.3.28上,但不能正常工作

时间:2014-03-28 14:41:58

标签: php drupal memcached mamp mamp-pro

我有一个Drupal站点在OS X Mavericks 10.9.2上使用PHP版本5.3.28在新的MAMP PRO 3.0.3上运行。

我使用pecl install memcache安装了memcache并在extension=memcache.so的扩展部分下添加了php.ini行,但仍然Drupal显示多个您必须启用PECL memcached或memcache扩展名在页面顶部使用memcache.inc。错误。

Drupal根目录上的

phpinfo()告诉我加载的配置文件位于:

/Library/Application Support/appsolute/MAMP PRO/conf/php5.3.28.ini

,扩展名为:

/Applications/MAMP/bin/php/php5.3.28/lib/php/extensions/no-debug-non-zts-20090626/

  

$ cat" / Library / Application Support / appolute / MAMP PRO / conf / php5.3.28.ini" | grep memcache   延长= memcache.so

     

$ ls /Applications/MAMP/bin/php/php5.3.28/lib/php/extensions/no-debug-non-zts-20090626/ | grep memcache

     

-rwxrwxr-x 1位用户admin 65K 3月28日14:00 memcache.so *

我做错了什么或者这个问题与MAMP PRO 3有关吗?我已经用自制软件安装了memcached二进制文件,并且进程正在运行。

我还在MAMP中为每个主机设置使用个人PHP版本。

启动Apache时,日志中出现错误:

  

PHP警告:PHP启动:无法加载动态库' /Applications/MAMP/bin/php/php5.3.28/lib/php/extensions/no-debug-non-zts-20090626/memcache.so& #39; - dlopen(/Applications/MAMP/bin/php/php5.3.28/lib/php/extensions/no-debug-non-zts-20090626/memcache.so,9):找不到符号:_zend_new_interned_string     参考自:/Applications/MAMP/bin/php/php5.3.28/lib/php/extensions/no-debug-non-zts-20090626/memcache.so     预计在:平面命名空间    在/Applications/MAMP/bin/php/php5.3.28/lib/php/extensions/no-debug-non-zts-20090626/memcache.so在第0行的未知中

这是什么意思。

感谢您的帮助!

3 个答案:

答案 0 :(得分:3)

我没有得到pecl提供的memcache扩展工作。我甚至安装了PHP 5.3.14,但遇到了同样的问题。然后我从github克隆了php-memcached-mamp存储库,并从那里使用了memcached扩展,它运行正常。

答案 1 :(得分:0)

intl extension添加到您的配置中。

答案 2 :(得分:0)

我刚刚发现了这个问题,另一篇文章帮助我解决了这个问题。 macports安装了php-config53(不是php-config),我从一个旧的PHP 5.4安装有一个流浪的php-config。删除了/ usr / bin / php-config和symlinked php = config53 - > php-config,re-rean pecl install memcache-beta,它有效。