@ZhoZho

Почему браузер выдает ошибку при работе с долгим скриптом?

Скрипт загружен на удаленный сервер, скрипт работает около 2х минут.
У меня все нормально работает во всех браузерах.
У клиента во всех браузерах после определенного времени браузер выдает ошибку, что-то вроде "не получено никаких данных".
Что это может быть?
Пробовали настраивать timeout в IE, не помогло. Пробовали скачать последнюю оперу, тоже не помогло. Стоит так же последний Хром, собс-но тоже самое...

Вывод который я сделал, проблема в винде: у клиента win7, стоит касперский. У меня win xp, по семерке я не специалист, да и с такими проблемами впервые сталкиваюсь.

Загаловки в скрипте такие
<?php
ini_set("display_errors","On");
error_reporting(E_ALL ^ E_NOTICE);
ob_start();
session_start();
header("Content-type: text/html;charset=UTF-8");
header('Cache-Control: no-store, no-cache, must-revalidate'); 
header('Cache-Control: post-check=0, pre-check=0',false); 
header('Pragma: no-cache');
  • Вопрос задан
  • 2978 просмотров
Пригласить эксперта
Ответы на вопрос 5
nazarpc
@nazarpc
Open Source enthusiast
Кроме таймаута в PHP попробуйте так:
set_time_limit (30); //Таймаут 30 секунд по-умолчанию, увеличьте до нужного
ob_implicit_flush(true); //Мгновенный сброс буфера

И посылайте время от времени пробелы, чтобы браузер видел, что что-то грузится.
Ответ написан
Комментировать
Я, конечно, не в курсе все ситуации, но ИМХО 2 минуты - это не дело вообще. Принимайте от клиента данные, записывайте в бд, обрабатывайте по крону, с клиента аяксом спрашивайте не ли решения, как только есть выводите его.
Ответ написан
Комментировать
DeFacto
@DeFacto
По-умолчанию выполнение скрипта 30 секунд
Попробуйте:
set_time_limit (60*3); // 3 мин
Ответ написан
Комментировать
@ZhoZho Автор вопроса
я пробовал посылать пробелы и делать ob_flush() (тоже самое что ob_implicit_flush)
тайм аут стоит большой в конфиге

да и самое главное - у меня работает, а у клиента нет. Тут дело явно не в скрипте и не в сервере.
Или я не прав?
Ответ написан
Комментировать
EnterSandman
@EnterSandman
Эникей
Для локализации проблемы возьмите еще одного человека из другого места
может клиент сидит за прокси?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы