PHP会话无法正常工作
发布时间:2020-12-13 16:23:25 所属栏目:PHP教程 来源:网络整理
导读:我已经放弃了这个问题,因为我怀疑某些东西损坏了我的设置导致了问题,并从此创建了一个新的服务器.我觉得发现这个问题会比启动一台新服务器和设置它花费更多时间.然而,我仍然有兴趣找出导致这种情况的原因,因为它运行了3个月并且在周末才开始出现这些症状. **
我已经放弃了这个问题,因为我怀疑某些东西损坏了我的设置导致了问题,并从此创建了一个新的服务器.我觉得发现这个问题会比启动一台新服务器和设置它花费更多时间.然而,我仍然有兴趣找出导致这种情况的原因,因为它运行了3个月并且在周末才开始出现这些症状. **
================================================== ============================= 我有点初学者的问题,可能是因为我过去几个月一直在使用其他语言而且我似乎无法找出为什么这不起作用. <?php session_start(); print_r($_SESSION); if(isset($_SESSION['views'])){ $_SESSION['views'] = $_SESSION['views']+ 1; } else{ $_SESSION['views'] = 1; } echo "views = ". $_SESSION['views']; echo '<p><a href="">Refresh</a></p>'; # for testing var_dump($_SESSION); ?> 会发生的事情是var_dump显示使用视图键和值1创建会话.但是,刷新页面时没有找到活动会话,并且视图键再次设置为1. 现在奇怪的是,在PHPSESSID下创建了一个会话ID.我试图检查存储会话的路径是否可写并且确实存在.页面返回的标题如下: Cache-Control no-store,no-cache,must-revalidate,post-check=0,pre-check=0,public Connection close Content-Encoding gzip Content-Length 68 Content-Type text/html; charset=utf-8 Date Wed,18 Jan 2012 13:03:34 GMT Expires Thu,19 Nov 1981 08:52:00 GMT Pragma no-cache Server Apache Vary Accept-Encoding X-UA-Compatible IE=Edge,chrome=1 在请求标头中,会话cookie按如下方式发送: Cookie PHPSESSID=0e1416r7pun3pamvc7cp8mjat3 我不确定那里是否有任何错误.我在Amazon EC2 linux AMI上运行它. 我还将包括phpinfo(): PHP Version 5.3.6 System Linux ip-**-**-**-** *.*.**.**-**.**.amzn1.x86_64 #1 SMP Sat Feb 19 23:42:04 UTC 2011 x86_64 session Session Support enabled Registered save handlers files user Registered serializer handlers php php_binary wddx Directive Local Value Master Value session.auto_start Off Off session.bug_compat_42 Off Off session.bug_compat_warn Off Off session.cache_expire 180 180 session.cache_limiter nocache nocache session.cookie_domain no value no value session.cookie_httponly On 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 1000 1000 session.gc_maxlifetime 1440 1440 session.gc_probability 1 1 session.hash_bits_per_character 5 5 session.hash_function 0 0 session.name PHPSESSID PHPSESSID session.referer_check no value no value session.save_handler files files session.save_path /var/lib/php/session /var/lib/php/session session.serialize_handler php php session.use_cookies On On session.use_only_cookies On On session.use_trans_sid 0 0 任何帮助都会非常感激,因为我花了一整天时间来解决这个问题,但似乎无法找到解决方案.如果您需要更多信息,请告诉我. 解决方法
您应该检查php.ini文件中的session.use_cookies.
响应的标题没有COOKIE. session.use_cookies必须等于1. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |