У меня следующая проблема:
PHP-скрипт вызывается через Ajax. Сам скрипт закрывает соединение, используя следующие строки
ignore_user_abort(true);
header("Content-Length: 0");
header("Connection: close");
flush();
и затем начинает отправлять кучу писем в фоновом режиме, используя phpMailer (в цикле и с использованием sleep (1) после каждого письма - в будущем я хочу, чтобы это было случайное количество секунд после 5 отправленных писем). Используя FireBug, я вижу, что соединение со скриптом напрямую прерывается. Письма также отправляются.
Однако я не могу открыть ни одной страницы, пока скрипт работает в фоновом режиме - они продолжают загружаться до тех пор, пока фоновый скрипт явно не завершится. Странная вещь: сценарий, похоже, не блокирует весь сервер, так как ограничение подключения относится только к браузеру, который инициировал фоновый сценарий. Поэтому после запуска сценария, скажем, в FireFox, я все равно могу получить доступ к страницам на сервере в Chrome.
В чем может быть причина? Есть ли предел открытых MYSQLi-соединений для браузера (для сеанса, то есть ...) - я не смог ничего найти по этому поводу ... Или браузер (хотя FireBug говорит, что соединение было разорвано) тем не менее ждет за ответ сценария?
Как я мог решить это?
Заранее спасибо за любую помощь.