«Warning: Cannot modify header information» — Что это значит?
Столкнулся в непонятной ошибкой, предупреждением...
Что это значит?
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\travel\www\wp-config.php:1) in Z:\home\travel\www\wp-admin\post.php on line 197
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\travel\www\wp-config.php:1) in Z:\home\travel\www\wp-includes\pluggable.php on line 1174
Спасибо!
Это значит, что вы выводите какие-то данные на экран, до того как устанавливаются заголовки сервера на запрос...
Это баг или ошибка, который обязательно нужно поправить. Строка
Говорит о том что в файле
wp-config.php
в первой строке у вас код, который что-то выводит на экран. Из-за этого остальной код не может работать правильно.В частности не может правильно отработать код, который пытается установить PHP заголовки, код срабатывает в файлах:
Чтобы понятнее было приведу пример
Допустим, мы используем функцию wp_redirect() в файле шаблона, например в файле header.php. Но используем не в самом начале файла, а пониже, например после HEAD части.
В этом случае мы получим такое предупреждение и редирект наш работать не будет.
wp_redirect() устанавливает заголовки ответа в PHP на запрос, но PHP может установить заголовки, только если на экран еще не было ничего выведено. Так как на экран уже попал код HEAD части, HTTP заголовки уже не могут быть установлены. В результате, мы получаем нерабочий редирект и ошибку (предупреждение).
По аналогии, заголовки могут быть самые разные и на экран может быть выведено что угодно, пусть даже пробел. Во всех таких случаях мы получим ошибку.
так а как отследить где происходит отправка, в плагине или кто-то в движке кодировал?
Не понял вопроса. В самой ошибке же написано, в каком файле и на какой строке отправляются заголовки.
А как отловить ошибку, если нет (output started by...) а только Warning: Cannot modify header information - headers already sent in 'путь_к_файлу' on line XXX?