nginx, ошибка 404 и магические числа
В общем у меня при ошибке 404 перед страницей выводилось шестнадцатеричное число и после страницы — 0. Так, как магическое число все выводилось до заголовка, то весь дизайн ехал выглядел… отвратительно, не говоря уже об общей «неправильности».
Так вот, поиск показал, что это частая проблема связки nginx, ошибки 404 и размера тела ответа. Возникает эта проблема от того, что LiveStreet предполагает использование протокола HTTP/1.1, хотя это может быть не так.
Фиксить легко, надо всего лишь указать в ответе правильный протокол через $_SERVER['SERVER_PROTOCOL'], а не просто HTTP/1.1
Т.е. для livestreet'а надо править файл /classes/actions/ActionError.class.php и менять там
Никаких негативных последствий это нести не должно, т.ч. возможно этот фикс засунуть непосредственно в livestreet?
Так вот, поиск показал, что это частая проблема связки nginx, ошибки 404 и размера тела ответа. Возникает эта проблема от того, что LiveStreet предполагает использование протокола HTTP/1.1, хотя это может быть не так.
Фиксить легко, надо всего лишь указать в ответе правильный протокол через $_SERVER['SERVER_PROTOCOL'], а не просто HTTP/1.1
Т.е. для livestreet'а надо править файл /classes/actions/ActionError.class.php и менять там
"HTTP/1.1 404 Not Found"
на "{$_SERVER['SERVER_PROTOCOL']} 404 Not Found"
Никаких негативных последствий это нести не должно, т.ч. возможно этот фикс засунуть непосредственно в livestreet?
8 комментариев
Такое вот «сообщество».
Теперь по вопросу:
Ну если поиск показал и тебе удалось у себя это исправить то в чем проблема? У меня например при ошибке 404 ничего подобного не происходит и зачем мне менять 1.1 на 1.0. И потом я не думаю, что все так просто, при чем тут размер тела ответа? Ошибка 404 просто говорит о том, что отсутствует страница, которую запрашивает браузер у сервера. Лучше настроить nginx или связку его с апачем а не менять заголовки.
Эээ… А где-то было написано, что у меня есть проблема? Это описание решения такой проблемы. Вот и все. И если у вас не возникает такой проблемы, то топик не для вас, да. Но эта проблема периодически проявляется в определенных связках.
Собственно, вы, видимо, не понимаете о чем речь…
Чем лучше? И если лучше, то — как? ;) Вообще это не совсем проблема не связки, а скорее, все-таки, LiveStreet'а, ибо он не проверяет какой протокол используется, а сам решает, что используется HTTP 1.1 как будто это так и должно быть везде…
Тем не менее вы предлагаете засунуть этот свой фикс непосредственно в LS, т.е. для всех:)
Не согласен, я понимаю смысл ошибки 404. А вот о чем ваша речь… да возможно я так и не понял вашего предложения по поводу фикса LS.
Ну я так тоже могу предполагать одно, подразумевать другое и говорить скорее всего третье. Я сам настраивал у себя apache и nginx и я не вижу связи между появлением магических чисел, 404 ошибкой и размером тела ответа. То что вы нашли что то в поиске и что нужно поменять 1.1 на 1.0 мне также ни о чем не говорит.
Потому, что это ошибка. Я несколько поправил топик, чтобы пояснить в чем, собственно, ошибка. Советую перечитать.