База знаний хостинга



Cannot modify header information - headers already sent

<-- назад к списку вопросов

Схема работы протокола HTTP такова: сначала отправляются служебные заголовки (код ответа, cookie, сессия, срок кеширования и так далее), затем текстовый контент. После того как начался вывод контента, заголовки дополнить или изменить невозможно. 

Ошибка "Cannot modify header information - headers already sent by script.php:21" означает что в скрипте script.php в строке №21 начался вывод контента, и вызов фунции header невозможен. 

Чаще всего ошибка возникает после правки скриптов в неподходящих редакторах (Блокнот, и т.д.)

В качестве решения:

- Используя специализированный редактор, пересохраните файл (что указан в тексте ошибки) в кодировке UTF-8 без BOM (например Notepad++).

- Проверьте, нет ли пустых строк или пробелов перед первым тегом <?

- Отключите вывод ошибок и предупреждений (пропишите display_errors = Off в php.ini или .user.ini).