IE: как обрабатывать междоменные куки?

Мой основной сайт (хостинг) имеет IFRAME с сайта регистрации (regsite), размещенного на другом домене.

Я хочу разместить регистрацию в другом домене, потому что чувствую, что хранение информации для входа в БД на хост-сайте небезопасно, так как многие люди имеют доступ к бэкэнду.

Все браузеры принимают сессионный cookie-файл для входа, полученный от regsite, а Internet Explorer 8 - нет. Единственный способ заставить IE принять этот cookie - добавить оба сайта в "Надежные сайты", а это не то, что мне нужно.

Можно ли как-нибудь обойти междоменную проблему, кроме настройки локального браузера, или это мой единственный вариант перенести регистрацию на хост-сайт (curl не вариант, так как это не статический HTML, который я отображаю на сайте регистрации, а файлы PHP)?

2 ответа

Решение

Я думаю, что это можно решить, ничего не двигая, и немного программируя. Просто с некоторыми правилами DNS.

Например, вы можете создать новый поддомен с именем register.hostsite(.com), указывающий на ip, где находится regsite.

Затем перенаправьте IFRAME на этот новый поддомен.

Он будет получать те же биты с того же сервера, но теперь он будет внутри домена хоста.

Этого должно быть (по крайней мере, в теории) достаточно, чтобы удовлетворить IE. Я не уверен на 100%, хотя, я не использовал IFRAMES долгое время.

Если это не сработает, я бы посоветовал спросить и о сбое сервера.

РЕДАКТИРОВАТЬ: Я искал другую проблему и нашел эту реализацию PHP "микро-прокси" Yahoo. Это их рекомендуемый способ решения таких проблем:

http://developer.yahoo.com/javascript/samples/proxy/php_proxy_simple.txt

Проблема с iframe и IE заключается в том, что IE рассматривает содержимое iframe как третью сторону (как в рекламе и т. Д.).

Чтобы IE фактически сохранял файлы cookie, установленные этим документом домена, вам нужно, чтобы другой домен испустил P3P- заголовок с указанием своих намерений. Это легко сделать и требует добавления только одного http-заголовка.

Я не уверен, что вы подразумеваете под междоменными проблемами, хотя их нет - у вас просто два разных документа из двух разных доменов. Вы не указали, хотите ли вы, чтобы один домен устанавливал файлы cookie для другого, или одна страница обращается к другой.

Другие вопросы по тегам