При загрузке главной страницы сайта «Ошибка 500» , красным выдается сообщение (в рамке)
500 - SH404SEF : headers were already sent when I got control!
Killed at line 122 in sh404sef.inc.php: HEADERS ALREADY SENT (200) URL=http://127.0.0.1/ OPTION=com_content
Установлено: Joomla 1.5 + sh404SEF. При отключении в админке компонента, все грузится нормально.
- - Перезалейте файл конфигурации, буквально, из недавнего прошлого бекапа.
- Отличное решение из Интернета:
В данном случае проблема в том, что один из php файлов вываливает в браузер мусор, и это воспринимается как HTTP заголовок, все это дело просекает sh404 и вылетает с ошибкой. Мусором может быть пробел, лишняя строка, или еще что-то перед в конце файла или не в кассу вставленный echo. Заходим в папку components, далее в файл sh404sef.inc.php на строку, которая указана в ошибке, у меня это 122. И меняем код. Красным обозначено, что нужно добавить.
if (!headers_sent($filename, $linenum)) { header('HTTP/1.0 200 OK'); } else { echo("Засада! Заголовки уже отправлены в $filename на строке $linenum "); $url = $GLOBALS['shConfigLiveSite'].$_SERVER['QUERY_STRING']; _log('Headers already sent on homepage'); JError::raiseError(500, " SH404SEF : headers were already sent when I got control! Killed at line ".__LINE__." in ".basename(__FILE__).": HEADERS ALREADY SENT (200) URL=".@$uri->_uri.' OPTION='.$vars['option'] ); }
Снова пытаемся зайти на главную страницу сайта, в браузере, в верху, над сообщением об ошибке видим название файла и строку в которой вываливается мусор. Заходим в этот файл на нужную строку и смотрим нет ли там мусора. - Но если вы все облазили и ничего не нашли - попробуйте следующее: открываем файл и перекодируем его в UTF-8 и снова отправляем на сервер.
Чистим кэш и обновляем страницу.
Дополнительная информация: Похожая информация:
|