session同ip不同端口的多个网站session冲突的解决办法
在程序的common文件或是其它公用文件中加入一句php代码,如下:
ini_set('session.name','PHPSESSID_RS');
就是因为所有程序使用的session名都是在php.ini中设置的默认名称PHPSESSID, 所以 如果同域(同IP不同端口)下的网站之间使用session时会出现共用冲突情况。现在两套程序使用不同的session.name来保存sessionid,所以就不会产生session的冲突问题了。
关于PHP中浏览器禁止Cookie后,Session能使用吗?
ini_set('session.use_trans_sid',1); // 允许SessionID通过URL明文传输
ini_set('session.use_only_cookies',0);关闭仅使用cookies存放会话id
ini_set('session.use_cookies',0); 关闭基于cookies的session会话
在页面的url中或者通过表单post传递sessionid
<a href="session_a.php?<?php print session_name() ?>=<?php print session_id() ?>">另一个页面</a>
接收页面 session_id($_GET['PHPSESSID']);
取出存在session中的值