IE8 глохнет после 302 в новом окне

Веб-сайт моего клиента открывает внешние ссылки в новых окнах (с target = "_ blank"). Ссылки также направляются через регистратор, который отвечает 302 перенаправлением на желаемую страницу.

Например, вместо

<a href="http://stackoverflow.com">...</a>

У нас есть

<a href="/redirect?to=http://stackoverflow.com" target="_blank">...</a>

Где /redirect?to=$url возвращает HTTP 302 в $url.

Это отлично работает во всех браузерах, кроме IE8. Вместо открытия нового окна с желаемым URL-адресом IE8 открывает новое окно и останавливается с индикатором выполнения и пустой адресной строкой. Если затем я нажму «стоп и перезагрузить», загрузится нужный URL.

Кто-нибудь сталкивался с этой проблемой? Есть ли известное решение, которое сохранило желаемое поведение моего клиента? То есть открывать ссылки в новом окне с ведением журнала на основе перенаправления.


person Community    schedule 07.05.2009    source источник
comment
Если вынуть target = _blank, все нормально?   -  person Greg    schedule 07.05.2009
comment
Да, если мы удалим target = _blank, то перенаправление работает. И если мы удалим перенаправление, но оставим target = _blank, он также будет работать (если целевая страница также не перенаправляет).   -  person    schedule 07.05.2009


Ответы (2)


Я знаю, что это просто обходной путь, но ... использовать перенаправление JS, если браузер IE8?

person Rytis    schedule 20.06.2009

Следите за своим трафиком в отладчике сетевого трафика, таком как Fiddler2, чтобы увидеть, что происходит в сети. Затем вы можете добавить точный исходный текст HTTP-ответа на свой вопрос, чтобы облегчить воспроизведение результатов.

Кроме того, пересекает ли это перенаправление между зонами безопасности IE (например, Интернет, Интранет и т. Д.)? В частности, всегда интересно, если перенаправление пересекает (Vista +) из зоны защищенного режима в зону незащищенного режима, поскольку это происходит через довольно неясный кодовый путь в IE.

person EricLaw    schedule 18.07.2009