所以我在一个域上有这个页面,脚本标记指向另一个域,每次刷新页面时,都会生成一个新的session_id。这只发生在IE上,所有其他浏览器似乎都有效。
这是一个带代码的例子(JS和PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="http://domain2.com/index.php"></script>
</head>
<body>
</body>
</html>
在http://domain2.com/index.php上:
<?php
session_start();
header("content-type: application/x-javascript");
echo "alert('".session_id()."');";
?>
在domain1.com/index.php中打开Chrome或Firefox,您会看到一个包含会话ID的提醒框。每次刷新时,您始终拥有相同的会话ID。 在IE中(我试过7,8和9),会话ID总是不同的。 饼干似乎没有得到妥善保存。
感谢您的帮助。
答案 0 :(得分:2)
出于文档目的,这是我找到的解决方案:
我使用IBM P3P Policy编辑器(p3p和CP文件)创建了一个p3p文件 上传文件夹/ w3c中的文件 并在domain2.com上的文件中添加了以下标题P3P:CP =“来自CP生成文件的内容”