Как исправить предупреждение Warning: Cannot modify header information - headers already sent by ?

Главные вкладки

Аватар пользователя shlop shlop 13 февраля 2018 в 13:30

Здравствуйте, подскажите пожалуйста, у меня в журнале появляется такое вот предупреждение:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/u0421090/public_html/***/includes/common.inc:2773) в функции drupal_send_headers() (строка 1490 в файле /var/www/u0421090/public_html/***/includes/bootstrap.inc). собственно появляется оно тогда, когда пользователь блокирует другого пользователя. У меня просто определенная роль на сайте, может блокировать пользователей и восстанавливать пароли. Сделал я это с помощью представления. Есть просто таблица, и в этой таблице перечислены все пользователи, в каждой строке есть ссылка, сделал я её с помощью поля "Пользователь: Ссылка отмены (Отключить пользователя)" и вот после нажатия на эту ссылку, открывается страница "При удалении учётной записи " и там перечислены пункты, выбираю пункт "Отключить учётную запись и снять с публикации её материалы.", всё выполнилось, захожу потом в журнал через админа, и вижу вот это предупреждение, и ещё такое вот "доступ запрещён 02/13/2018 - 13:03 batch", и такое происходит если отключает пользователь этой определенной роли, если Администратор, то никаких предупреждения нет. Подскажите пожалуйста, что тут можно сделать, заранее благодарю за ответ.

Комментарии

Аватар пользователя Semantics Semantics 13 февраля 2018 в 13:41

Возможно, вы редактировали какие-то файлы (модули, темы) и сохранили в кодировке отличной от UTF без BOM.
Возможно, вас протроянили.
Надо искать из какого файла идёт, это в лога есть и смотреть по месту.

А может это и вовсе какой-нить eval(), начните с поиска указанной строки в common.inc и функции, что попадает на эту строку.
Будет хоть какая зацепка

Аватар пользователя shlop shlop 13 февраля 2018 в 13:45

Понял, спасибо. Ну тут вот в самом предупреждении указаны файлы Warning: Cannot modify header information - headers already sent by (output started at /var/www/u0421090/public_html/m-tech.avm-t.ru/includes/common.inc:2773) в функции drupal_send_headers() (строка 1490 в файле /var/www/u0421090/public_html/m-tech.avm-t.ru/includes/bootstrap.inc).

Аватар пользователя gun_dose gun_dose 13 февраля 2018 в 17:16

Нет, это не те файлы указаны. Здесь указаны файлы, в которых находятся функции, выполнению которых помешало то, что кто-то испортил какие-то другие файлы. Это либо UTF-8 с BOM, либо какие-то символы перед открытым тэгом php, либо закрытый тэг php в модуле или инклюде.

Аватар пользователя shlop shlop 13 февраля 2018 в 17:54

Исправил проблему, просто в "редактировать права доступа" для роли установил флажок напротив пункта "Просмотр административной темы ", теперь предупреждение не вылетает

Аватар пользователя shlop shlop 13 февраля 2018 в 15:10

В общем что удалось узнать, когда пользователь нажал на ссылку из таблицы, попал на страницу "При удалении учётной записи" и выбрал пункт, затем нажал кнопку "удалить учетную запись", его кидает на страницу http://***/batch а тут такой прогрессбар идёт, и в этот то момент и получаются вот эти два предупреждения, что доступ запрещен и Warning: Cannot modify header information - headers already sent by