Vì vậy, tôi có trang này trên một tên miền có thẻ tập lệnh trỏ trên tên miền khác và mỗi lần tôi làm mới trang, session_id mới được tạo. Điều này chỉ xảy ra trên IE, tất cả các trình duyệt khác dường như hoạt động.Cookie bên trong tập lệnh-thẻ bao gồm trên các tên miền chéo
Dưới đây là một dụ với mã (JS và 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>
Và trên http://domain2.com/index.php:
<?php
session_start();
header("content-type: application/x-javascript");
echo "alert('".session_id()."');";
?>
mở Chrome hoặc Firefox ở domain1.com/index. php và bạn sẽ thấy một hộp cảnh báo với id phiên. Mỗi lần bạn làm mới, bạn luôn có cùng id phiên. Trong IE (tôi đã thử với 7, 8 và 9), id phiên luôn khác nhau. Các cookie dường như không được lưu đúng cách.
Cảm ơn bạn đã được trợ giúp.
Bất kỳ ai nghĩ rằng nó có thể được thực hiện? – Frank
Tôi thấy rằng giá trị mặc định của chính sách bảo mật trong Internet Explorer là Trung bình và nói: chặn cookie của bên thứ ba không có chính sách bảo mật nhỏ gọn Nếu tôi đặt nó cho phép tất cả, nó hoạt động. Nhưng có cách nào để vượt qua điều này? – Frank