nginx似乎不会加载用于php的memcached模块

我有一台运行nginx和memcache的Ubuntu机器,我试图在Memcached上使用PHP。 我遇到了Fatal error: Class 'Memcached' not found

ini文件是从/etc/php5/fpm/php.ini加载的,除了memcached.ini(即使在重新启动nginx之后)之外,所有其他附加的.ini文件都被parsing,如phpinfo()的输出所示。

输出为phpinfo()

我试着apt-get install php5-memcache ,它没有错误地完成。 但是, pecl install memcached失败,出现以下错误:

 In file included from /tmp/pear/temp/memcached/php_memcached.h:22:0, from /tmp/pear/temp/memcached/php_memcached.c:47: /tmp/pear/temp/memcached/php_libmemcached_compat.h:5:40: fatal error: libmemcached-1.0/memcached.h: No such file or directory compilation terminated. make: *** [php_memcached.lo] Error 1 ERROR: `make' failed 

服务器在/usr/include/libmemcached ,但即使使用--with-libmemcache=/usr/include/libmemcached pecl安装也会失败。

输出为php -i | grep -i memcache php -i | grep -i memcache如下:

 /etc/php5/cli/conf.d/memcached.ini, memcached memcached support => enabled libmemcached version => 0.44 Registered save handlers => files user memcached PWD => /usr/include/libmemcached _SERVER["PWD"] => /usr/include/libmemcached 

我不知道还有什么要检查的。 非常感谢,如果有人可以帮我解决这个问题。

谢谢!

[更新] Memcached正在从cli工作。

我解决了这个问题。 我唯一要做的就是重新启动php5-fpm
sudo service php5-fpm restart

https://sready.com/en/blog/building-nginx-microcaching-mariadbmysql-php-fpm-debian-6-apc-memcache-drupal-7-server中find

什么是输出

php -i | grep memcache

我已经使用memcache来存储php会话以及Magentocaching和会话。

有两件事不要混淆:

  1. Memcached – >注意守护进程“d”监听端口号:11211.它可以用来存储php会话,而不是文件系统等。

  2. Memcache – >通常不用php编译的模块。 当你想要将你的php会话存储在memcached中的时候使用它。

所以如果php -i | grep memcache显示你已经安装了memcache。 然后,您需要安装memcached(守护进程)以便能够使用/发送会话。