К сожалению, и вы, и партнерский сайт должны установить заголовки.
Альтернативы:
- Если вы не хотите, чтобы партнерский сайт устанавливал заголовки, одним из вариантов является снижение уровня безопасности (в IE) или предоставление доступа к сторонним файлам cookie (в FF) в настройках браузера. Это должен делать каждый клиент, поэтому это не может быть привлекательным решением.
- Используйте
localStorage
(HTML5 thingy - браузеры, поддерживающие localStorage
, разрешают доступ как к сайту, так и к содержимому iFrame, которое хранится в localStorage). Это может быть неосуществимо в краткосрочной перспективе, поскольку для реализации сохранения / чтения информации в / из localStorage
требуется и вам, и вашему партнерскому сайту, и не все браузеры поддерживают это (особенно старые браузеры IE).
Чтобы добавить базовый заголовок политики (в идеале вы должны создать собственную политику, которая проста - проверьте пункт № 2 ниже)
in php добавить эту строку:
<?php header('P3P: CP="CAO PSA OUR"'); ?>
в ASP.Net :
HttpContext.Current.Response.AddHeader("p3p", "CP=\"CAO PSA OUR\"");
в HTML страниц:
<meta http-equiv="P3P" content='CP="CAO PSA OUR"'>
Относительно ваших других проблем:
Заголовки
1) P3P относятся к заголовку HTTP, который доставляет в браузер нечто, называемое compact policy . Без такой политики IE (в первую очередь) и другие браузеры будут блокировать доступ к сторонним cookie-файлам (термин, используемый для обозначения cookie-файлов iFrame) в целях защиты конфиденциальности пользователей.
Что касается Google Analytics, и вашему сайту и сайту партнера все еще необходимо настроить междоменное отслеживание , как указано в их документации.
2) Вы можете использовать этот заголовок basic policy (этого достаточно для исправления файлов cookie iFrame):
P3P: CP = "CAO PSA OUR"
или создайте свой собственный. Если вы не уверены, что означают эти термины, см. this .
Для создания такой политики вы можете использовать онлайн-редакторы, такие как p3pedit.com или IBM tool , которые представляют набор вопросов и позволяют вам представить ответы. Это позволяет вам быстро создать такую политику. Вы можете сгенерировать политику XML , компактную политику и многое другое.
3) Вы можете попробовать две альтернативы, упомянутые выше.
Действия по добавлению политики на весь сайт
- Создайте компактную политику (используя один из инструментов, упомянутых ранее) или используйте базовую политику
- В IIS щелкните правой кнопкой мыши нужную страницу, каталог или сайт, а затем нажмите Свойства.
- На вкладке Заголовки HTTP нажмите Добавить.
- В поле Имя пользовательского заголовка введите P3P.
- В поле Значение настраиваемого заголовка введите свою политику Compact P3P (или базовую политику из приведенных выше) и нажмите кнопку ОК.
- В Apache , строка mod_header будет выглядеть так:
Header append P3P "CP=\"CAO PSA OUR\""
Надеюсь, это поможет.