Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Memcached未显示在phpinfo()中_Php_Linux_Memcached_Redhat - Fatal编程技术网

Memcached未显示在phpinfo()中

Memcached未显示在phpinfo()中,php,linux,memcached,redhat,Php,Linux,Memcached,Redhat,我已经安装了libmemcached和memcached-pecl-extension-for-php,但由于某些原因,它没有正确安装?我已经在/usr/lib64/php/中使用了memcached.so,并在/usr/local/lib中使用了libmemcache.so/ 一切似乎都正确无误地构建,我重新启动了apache 我还安装了守护进程 我以前很容易地为php安装了Memcache类,但是我意识到我想要的是Memcached(注意d)类。如果需要更多信息,请告诉我 编辑:我以前让me

我已经安装了libmemcached和memcached-pecl-extension-for-php,但由于某些原因,它没有正确安装?我已经在/usr/lib64/php/中使用了memcached.so,并在/usr/local/lib中使用了libmemcache.so/

一切似乎都正确无误地构建,我重新启动了apache

我还安装了守护进程

我以前很容易地为php安装了Memcache类,但是我意识到我想要的是Memcached(注意d)类。如果需要更多信息,请告诉我

编辑:我以前让memcache(没有d)在php中工作,所以我知道我在操作正确的php.ini

编辑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

我已经在centos5中使用yum安装程序而不是pecl安装memcached解决了这个问题

这样-->yum安装php-pecl-memcached


然后,服务httpd重新启动,它显示在phpinfo()中。

几天前我遇到了类似的错误。安装memcached的新版本(2.0)对我有帮助

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-


在php.ini中,然后重新启动apache

我不知道这是否是同一个问题,但经过几个小时的努力,我使用下面的命令在CentOS上正确安装了带有Memcached的php:

yum --enablerepo=remi-php73 install php-memcached
测试安装:

php -i | grep -i memcache
应该显示如下内容:

/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

您能否验证apache错误日志中没有错误?您是否将
扩展名=memcache.so
添加到正确的php.ini中?是的,有错误。如何修复显示的错误?只需在memcached之前修复扩展加载顺序json。(使用分发包,每个扩展都有一个以数字开头的配置文件,以确保正确的加载顺序)hm,没有想到这一点。下次我就试试这个!
/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