Php 使用memcached处理程序启动会话失败

Php 使用memcached处理程序启动会话失败,php,session,memcached,Php,Session,Memcached,我试图使用memcached来存储会话,但在尝试使用处理程序时,会话启动似乎失败了 我用这个简单的脚本来看看发生了什么 ini_set('error_reporting', E_ALL); echo ini_get("session.save_handler").'<br>'; echo ini_get('session.save_path').'<br>'; echo(var_export(session_start(), true)).'<br>'; in

我试图使用memcached来存储会话,但在尝试使用处理程序时,会话启动似乎失败了 我用这个简单的脚本来看看发生了什么

ini_set('error_reporting', E_ALL);
echo ini_get("session.save_handler").'<br>';
echo ini_get('session.save_path').'<br>';
echo(var_export(session_start(), true)).'<br>';
ini_set("session.save_handler",'files');
ini_set('session.save_path', '/tmp');
echo ini_get("session.save_handler").'<br>';
echo ini_get('session.save_path').'<br>';
echo(var_export(session_start(), true));
这是我的配置

memcache
memcache support    enabled
Active persistent connections   0
Version 2.2.7
Revision    $Revision: 327750 $
Directive   Local Value Master Value
memcache.allow_failover 1   1
memcache.chunk_size 8192    8192
memcache.default_port   11211   11211
memcache.default_timeout_ms 1000    1000
memcache.hash_function  crc32   crc32
memcache.hash_strategy  standard    standard
memcache.max_failover_attempts  20  20
这些是我的会话设置

session
Session Support enabled
Registered save handlers    files user memcache sqlite
Registered serializer handlers  php php_binary wddx
Directive   Local Value Master Value
session.auto_start  Off Off
session.bug_compat_42   On  On
session.bug_compat_warn On  On
session.cache_expire    180 180
session.cache_limiter   nocache nocache
session.cookie_domain   xxxxxx.com  no value
session.cookie_httponly Off Off
session.cookie_lifetime 0   0
session.cookie_path /   /
session.cookie_secure   Off Off
session.entropy_file    no value    no value
session.entropy_length  0   0
session.gc_divisor  100 100
session.gc_maxlifetime  1440    1440
session.gc_probability  1   1
session.hash_bits_per_character 4   4
session.hash_function   0   0
session.name    CMSSESSID   PHPSESSID
session.referer_check   no value    no value
session.save_handler    memcached   memcached
session.save_path   127.0.0.1:11211 127.0.0.1:11211
session.serialize_handler   php php
session.use_cookies On  On
session.use_only_cookies    Off On
session.use_trans_sid   0   0
我遵循这一点,能够找到解决问题的方向

起初我只设置了session.save_handler=memacache,然后php错误弹出窗口说它无法启动

然后我设置
session.save_path=”tcp://127.0.0.1:11211?persistent=1&weight=1&timeout=1&retry_interval=15“
而且它可以工作


我不确定这是否也是你的问题。希望能有所帮助。

这应该会有所帮助:thx@Darren但目前的问题不是是否使用它,而是为什么它不起作用,尽管我对memcache与memcached的区别感到困惑,一个使用tcp协议,另一个不使用……我的意思是,你的设置方式可能不会导致你面临的问题。这些问题的内容是我认为最可靠的,最适合你的问题,而不是他们面临的问题!:)您可能是对的,配置是问题所在,我没有安装它,但想让它正常工作,我感谢任何调试提示,或者可能有人会发现上面的设置是错误的……您的apache错误日志中是否有任何内容?这是针对memcache的。OP声明他正在使用memcached这件事乍一看非常令人困惑。这个答案对我很有帮助。
session
Session Support enabled
Registered save handlers    files user memcache sqlite
Registered serializer handlers  php php_binary wddx
Directive   Local Value Master Value
session.auto_start  Off Off
session.bug_compat_42   On  On
session.bug_compat_warn On  On
session.cache_expire    180 180
session.cache_limiter   nocache nocache
session.cookie_domain   xxxxxx.com  no value
session.cookie_httponly Off Off
session.cookie_lifetime 0   0
session.cookie_path /   /
session.cookie_secure   Off Off
session.entropy_file    no value    no value
session.entropy_length  0   0
session.gc_divisor  100 100
session.gc_maxlifetime  1440    1440
session.gc_probability  1   1
session.hash_bits_per_character 4   4
session.hash_function   0   0
session.name    CMSSESSID   PHPSESSID
session.referer_check   no value    no value
session.save_handler    memcached   memcached
session.save_path   127.0.0.1:11211 127.0.0.1:11211
session.serialize_handler   php php
session.use_cookies On  On
session.use_only_cookies    Off On
session.use_trans_sid   0   0