[英]Memcached not showing up in phpinfo()
I've installed libmemcached and memcached pecl extension for php and for some reason it's not installing correctly?我已经为 php 安装了 libmemcached 和 memcached pecl 扩展,但由于某种原因它没有正确安装? i've got memcached.so in /usr/lib64/php/ with the right permissions and libmemcache.so in /usr/local/lib/
我在 /usr/lib64/php/ 中获得了具有正确权限的 memcached.so,在 /usr/local/lib/ 中获得了 libmemcache.so
Everything seemed to build correctly without error, and I restarted apache?一切似乎都没有错误地正确构建,我重新启动了 apache?
i also have the daemon installed.我也安装了守护程序。
I somehow easily got the Memcache class easily installed for php before, but I realized what i wanted was the Memcached (note the d) class.我之前以某种方式轻松地为 php 轻松安装了 Memcache 类,但我意识到我想要的是 Memcached(注意 d)类。 let me know if more info is needed!
如果需要更多信息,请告诉我!
EDIT: I previously had memcache (without the d) working in php so I know i was manipulating the correct php.ini!编辑:我以前在 php 中使用过 memcache(没有 d),所以我知道我正在操作正确的 php.ini!
EDIT 2: there WAS indeed an apache error!编辑 2:确实存在 apache 错误!
Unable to load dynamic library '/usr/lib64/php/modules/memcached.so' - /usr/lib64/php/modules/memcached.so: undefined symbol: php_json_encode in Unknown on line 0
I've solved it in centos5 using the yum installer instead of the pecl install memcached我已经在 centos5 中使用 yum 安装程序而不是 pecl install memcached 解决了这个问题
THIS way --> yum install php-pecl-memcached这样 --> yum install php-pecl-memcached
then, service httpd restart and it shows up in phpinfo()然后,服务 httpd 重新启动并显示在 phpinfo() 中
I don't know if it's the same problem but after struggling with this for hours I manage to have PHP properly installed with Memcached on CentOS using the command bellow:我不知道这是否是同样的问题,但在为此挣扎了几个小时后,我设法使用以下命令在 CentOS 上正确安装了带有 Memcached 的 PHP:
yum --enablerepo=remi-php73 install php-memcached
Test installation:测试安装:
php -i | grep -i memcache
Should show something like:应该显示如下内容:
/etc/php.d/50-memcached.ini
memcached
memcached support => enabled
libmemcached version => 1.0.18
memcached.compression_factor => 1.3 => 1.3
memcached.compression_threshold => 2000 => 2000
memcached.compression_type => fastlz => fastlz
memcached.default_binary_protocol => Off => Off
memcached.default_connect_timeout => 0 => 0
memcached.default_consistent_hash => Off => Off
memcached.serializer => igbinary => igbinary
memcached.sess_binary_protocol => On => On
memcached.sess_connect_timeout => 0 => 0
memcached.sess_consistent_hash => On => On
memcached.sess_consistent_hash_type => ketama => ketama
memcached.sess_lock_expire => 0 => 0
memcached.sess_lock_max_wait => not set => not set
memcached.sess_lock_retries => 5 => 5
memcached.sess_lock_wait => not set => not set
memcached.sess_lock_wait_max => 150 => 150
memcached.sess_lock_wait_min => 150 => 150
memcached.sess_locking => On => On
memcached.sess_number_of_replicas => 0 => 0
memcached.sess_persistent => Off => Off
memcached.sess_prefix => memc.sess.key. => memc.sess.key.
memcached.sess_randomize_replica_read => Off => Off
memcached.sess_remove_failed_servers => Off => Off
memcached.sess_sasl_password => no value => no value
memcached.sess_sasl_username => no value => no value
memcached.sess_server_failure_limit => 0 => 0
memcached.store_retry_count => 2 => 2
Registered save handlers => files user memcached
I have the similar error few days ago.几天前我有类似的错误。 Instaling of new version(2.0) of memcached helped me.
安装新版本(2.0)的 memcached 对我有帮助。
yum -y install gcc-c++
wget http://launchpad.net/libmemcached/1.0/0.50/+download/libmemcached-0.50.tar.gz
tar xzf libmemcached-0.50.tar.gz
cd libmemcached-0.50
./configure
make
make install
wget http://pecl.php.net/get/memcached-2.0.0b2.tgz
pecl install memcached-2.0.0b2.tgz
echo 'extension=memcached.so' > /etc/php.d/memcached.ini
service php-fpm restart
cd ..
rm -r libmemcached-0.50*
rm -r memcached-
add添加
extension=memcache.so
in php.ini then restart apache在 php.ini 然后重启 apache
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.