Последние два дня мы несколько часов обсуждали эту проблему, чтобы выяснить, что происходит, и мы не можем найти никаких подсказок.
Вот что происходит; У нас есть приложение Flash, которое позволяет людям размещать заказы. Пользователи настраивают продукт, и изображение этого продукта генерируется Flash на лету и представляется пользователю. Если все устраивает, они могут отправить заказ на сервер. Массив байтов изображения и некоторые другие переменные отправляются на сервер, который обрабатывает заказ и генерирует PDF-файл со сводкой заказа и изображения продукта. Затем скрипт заказа отправляет все обратно в браузер.
Все идет хорошо, кроме Safari на OSX 10.4. Иногда заказ приходит, но Safari в большинстве случаев зависает. При просмотре окна «Активность» в Safari указывается, что он ожидает сценария заказа и что это «0 байтов?».
Мы подумали, что с сервером что-то не так, поэтому попробовали несколько других серверов, но проблема сохраняется.
Изначально мы использовали простую публикацию для обработки заказа, но, пытаясь решить эту проблему, мы прибегли к более сложным методам, таким как удаленное взаимодействие с Flash через AMFPHP. Это тоже не решило проблему.
Мы используем Чарльза для отслеживания трафика http, чтобы выяснить, покидают ли браузер запросы вообще, но странно то, что когда Чарльз работает, мы не можем воспроизвести проблему.
Я надеюсь, что кто-то знает, что происходит, потому что мы не можем понять это.