Файлы cookie внутри тега script включены в кросс-домены - PullRequest
6 голосов
/ 06 октября 2011

Итак, у меня есть эта страница в одном домене, где есть скрипт-тег, указывающий на другой домен, и каждый раз, когда я обновляю страницу, генерируется новый идентификатор_сессии.Это происходит только в IE, все остальные браузеры работают.

Вот пример с кодом (JS и PHP)

http://domain1.com/index.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()."');";
?>

Откройте Chrome или Firefox в domain1.com/index.php, и вы увидите окно предупреждения с идентификатором сеанса.Каждый раз, когда вы обновляете, у вас всегда один и тот же идентификатор сессии.В IE (я пробовал с 7, 8 и 9), идентификатор сессии всегда отличается.Кажется, файлы cookie не сохраняются должным образом.

Спасибо за любую помощь.

1 Ответ

2 голосов
/ 06 октября 2011

В целях документации вот решение, которое я нашел:

Я создал файл p3p с помощью редактора политик IBM P3P (файл p3p и CP). Загрузил файлы в папку / w3c и добавил следующий заголовокв файле на domain2.com P3P: CP = "содержимое из сгенерированного файла CP"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...