Я работаю над сайтом с внешним интернет-магазином, например:
Код: Выделить всё
$webshopurl = "webshop.com/something/?id=" . $transaction_id; //and some other parameters
header ( "Connection: close" );
header ( "Location: " . $webshopurl );
header ( "Content-Length: " . $length );
$response= getResponse($transaction id /*and some other stuff*/);
getResponse() содержит lopp, который продолжает опрашивать интернет-магазин, чтобы узнать, как прошла транзакция, и соответствующим образом реагирует, если транзакция завершена, или завершает работу с тайм-аутом через 10 минут. В большинстве браузеров это работает нормально, браузер заходит в интернет-магазин, пользователь покупает, и как только транзакция завершается, цикл опроса получает информацию и делает все, что делает. Однако IE не будет перенаправляться до тех пор, пока PHP не перестанет работать, поэтому цикл не сможет обрабатывать транзакции интернет-магазина. Я попробовал вручную ввести URL-адрес интернет-магазина в браузер, и все сработало нормально.
Я не писал эту систему, я только поддерживаю ее, поэтому я бы предпочел воздержаться от полного пересмотра системы.
EdiT: Я пробовал использовать мета-код JavaScript и HTML для перенаправления, но они работают только после того, как PHP перестал работать.
Подробнее здесь:
https://stackoverflow.com/questions/315 ... ithout-die