LINUX.ORG.RU

Непонятные сбои php

 ,


0

1

На сервере Debian, настроен PHP5+Apache. С недавних пор по непонятной причине в некоторых случаях генерируемый php-скриптами html-код оказывается испорчен: выпадают целые куски (порядка килобайта). Обычно это происходит там, где есть html-комментарии <!-- --> или используются функции работы с выходным буфером (ob_start и т.д.). При этом php-код, который генерирует пропадающие фрагменты, явно выполняется. Иногда удавалось устранить проблему удалением ненужных html-комментариев, иногда она исчезала магическим образом после других изменений. При повторном выполнении php-скрипта проблема всегда воспроизводится в неизменном виде, при незначительном редактировании точка сбоя иногда смещается вперед или назад по html-коду.

Пробовал смотреть настройки output buffering в php.ini - изменение дефолтного 4096 на On не дало результата.

В чем может быть проблема? Как попробовать понять в чем дело? Я даже запрос в google сформулировать не могу, уж очень странные симптомы.

Ответ на: комментарий от Ubuntu1210

Браузерный кэш? Попробовал очищать и ставить заголовки, запрещающие кэширование. Не помогает.

amomymous ★★★
() автор топика
Ответ на: комментарий от amomymous

Само приложение не кэшируется? Даже не знаю, как словится еще раз такая ошибка попробовать поменять версию php (а потом назад вернуть) и проверить на том же URL? Можно и апач поменять.

Ubuntu1210
()

Несмотря на то что, по документации,

ob_get_clean() по сути выполняет ob_get_contents() и ob_end_clean().

замена ob_get_clean+ob_end_clean на ob_get_contents+ob_end_clean устранила проблему в этом случае. При этом на домашнем компе исходной проблемы не было и естественно замена функции ничего не изменила.

Остается непонятно, почему html-комментарии (не вложенные) в некоторых ситуациях приводили к пропаданию кусков кода за пределами комментариев.

amomymous ★★★
() автор топика
Ответ на: комментарий от amomymous

Остается непонятно, почему html-комментарии (не вложенные) в некоторых ситуациях приводили к пропаданию кусков кода за пределами комментариев.

А внутри этих комментариев php кода не было?

gwinn ★★★★
()

просто выбросить ``пых`` не вариант ??

pre-theorum
()
Ответ на: комментарий от gwinn

Стесняюсь своего говнокода, да, вроде, проблема решилась заменой функции. Глюк с html-комментариями не могу воспроизвести.

amomymous ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.