Vodmal
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору youri,Vlad2000Plus В браузере-то, конечно, загрузка прекращается. Но сам Proxomitron продолжает держать связь с сервером. Расскажу как я на это "нарвался". У меня есть скрипт написанный на ASP. Всем кто с ним знаком должно быть известено сво-во объекта Response: IsClientConnected. Вот при выводе очень больших объемов данных, что бы не делать вывод "зря" (если пользователь уже нажал Stop) я в циле проверяю это IsClientconnected. Так вот когда я работаю через Proxomitron (причем даже если включено bypass или отключены все фильтры), то это свойство ВСЕГДА true. В новой версии 4.3 я это тоже проверял. Еще не исправлено. Вот только что специально проверил, что бы не говорить необоснованно: Запустил Proxomitron, настроил Opera 6.02 на работу с ним, настроил Firewall на захват всх пакетов Proxomitron, и запустил скрипт. Скрипт в цикле в течении 1 минуты и 40 сек. или пока не прервется связь, каждую секунду добавляет в БД 1 запись. Жму в Opera на Stop. Загрузка в ней естественно прекращается. Начинаю смотреть кол-во записей в этой таблице - растет. Смотрю в лог Firewall - пакеты добавляются. Что и требовалось доказать. Как мне написал Homeric в Yahoo Groups: Цитата: Есть фильтр заголовка Connection: close all connections (in+out) Включив его, ты увидишь заголовок Connection: close как для запросов так и для ответов. Попробуй - может это проблему решит. По умолчанию соединения закрываются в случае протокола HTTP/1.0 и остаются открытыми (keep-alive) для будущих запросов к тому же серверу в случае протокола HTTP/1.1. | Но и это не помогло. Вернее, не то что бы не помогло, но совершенно случайно я выяснил вот что: Если мой скрипт помимо добавления данных в БД будет цикле что-то посылать, то ИНОГДА Proxomitron отключается. Я думаю - буфер у него, видимо, какой-то заполняется и он прекращает. Увеличил объем отдаваемой информации - перестал отключаться. Бред, думаю. Значит не в объеме дело. А в чем тогда? Так и не выяснил... Отписал об этом Homeric'у, но уже неделю он молчит. Итого: Некорректно обрабатывается отказ пользователя от дальнейшей загрузки информации. PS: Кстати, было бы интересно узнать, как MS'овцы реализовали этот IsClientConnected. Если я не ошибаюсь, то в PHP ничего подобного нет. |