В моих журналах ошибок Apache время от времени отображается ошибка «Возникает преждевременный конец заголовков скрипта», и кажется, что мой сайт возвращает браузеру внутреннюю ошибку сервера 500, когда это происходит. Как ни странно, это будет несколько минут, потом все вернется на круги своя.
Если вы вообще используете mod_fcgid или fastcgi, у вас может быть несоответствие между количеством дочерних элементов и / или запросов, для которых apache настроен на использование каждого процесса fastcgi, и количеством дочерних элементов и / или запросов, которые использует php-cgi. Вы настраиваете переменные среды fastcgi в файле конфигурации apache или используете сценарий оболочки для установки PHP_FCGI_CHILDREN (должен отключить с помощью fcgid) и PHP_FCGI_MAX_REQUESTS?
Если конфигурация apache и настройки переменных среды PHP не совпадают, тогда, если PHP решит, что достиг MAX_REQUESTS до того, как apache решит, что это так, PHP выйдет, но apache все равно будет думать, что он принимает запросы.
Вы можете прочитать больше об этом, а также пример сценария оболочки и правильную конфигурацию fcgid. Вот.
В Apache Wiki есть хороший раздел об этой ошибке, в котором перечислены наиболее частые причины: скрипты, которые не могут правильно выводить заголовок HTTP. Похоже, что сценарий иногда дает сбой или время ожидания истекает, прежде чем он выводит и сбрасывает заголовок, который кажется вам ошибкой «Преждевременное завершение заголовков сценария» / 500.
Если возможно, попробуйте протестировать сценарий локально, чтобы убедиться, что он правильно выводит заголовки при всех условиях.