Как майк с форумом боролся.
К слову, CodeNet.Ru уже достаточно давно крутится на новом сервере, но для переноса остальных сайтов нужно было перекомпилировать PHP, так как не хватало модуля curl.
Ну, ради такого дела и Apache не грех обновить. В итоге я получил Apache 2.2.3 и PHP 5.2.0 – самый свежак на текущий день. Я знал, что всплывут глюки после обновления, но что столько….
Самым важным был признан глюк с “headers already sent“ возникающими на форуме, из-за которого перестал работать поиск и авторизация. Форум не самописный, форум стороннего разработчика, по этому часа на три я повис в разборах чужих исходников. Вникнуть в суть проблемы удалось – решить нет.
Время бежало, форум не работал. Решил я откатить PHP до 4.4.4 (откатить – громко сказано, до этого не сервере была установлена какая-то 4.1.X версия)
Не спасло. Обновил форум до 3.6.3…глюков стало только больше…
Выбора нет – пришлось добивать чужие исходники. К пол второму ночи стало ясно, что кукисы не ставятся из-за функции flush(), которая вызывалась внутри ob_start() и ob_end_cleant(). С какой версии этой функции стало свойственно такое поведение – не понятно.
Суть проблемы проста – делаем setcookie(),потом flush(), все HTTP заголовки отправляются клиенту, и больше заголовки отправлять нельзя. Такая беда происходит, даже если flush() находится внутри ob_start() и ob_end_clean()
Вот неработающий код:
Код:
<?php
ob_start();
print “a”;
flush();
$d=ob_get_contents();
ob_end_clean();
setcookie(“a”,”b”);
print $d;
?>
ob_start();
print “a”;
flush();
$d=ob_get_contents();
ob_end_clean();
setcookie(“a”,”b”);
print $d;
?>
Все, вроде починил…..
После всего этого выясняется что для PHP 5.2.0 нет Zend Optimizer’а и нет ionCube Loader’а. Ищу PHP 5.1.0. :)
Другими словами, администрация CodeNet.Ru приносит свои извинения за неработоспособность форума с 15:00 20.11.2007 до 2:12 21.11.2007
Конечно, приятного мало было 403 получить в ответ на адрес.... Но, всяко бывает.
А что за порча такая с сервантами? Неужели всё так сложно со свежими версиями PHP?
А меня этот бряк застал во время отправки сообщения. Начал писать ответ - всё было ок, пока писал - форум упал. Первая мысль - ну вот, своим сообщением я сломал форум... :)
Цитата: mfender
Не обращай внимания. Перепугались лишь отдельные личности. Да и то, решили, что причина как раз в том, что ты и указал... )))))
Конечно, приятного мало было 403 получить в ответ на адрес.... Но, всяко бывает.
А что за порча такая с сервантами? Неужели всё так сложно со свежими версиями PHP?
Конечно, приятного мало было 403 получить в ответ на адрес.... Но, всяко бывает.
А что за порча такая с сервантами? Неужели всё так сложно со свежими версиями PHP?
Да нет, все как обычно. Стандартная несовместимость со старыми версиями :)
хорошо что всё хорошо закончилось.
кстати, ещё хотел бы полюбопытствовать - а где сервера стоят и кто и поддерживает?
майк, прости за дурацкий вопрос, но на кой хрен тебе понадобился apache 2.2? у тя ж я помню на площадке FreeBSD? ффпечь 2.2 тады
Цитата: squirL
майк, прости за дурацкий вопрос, но на кой хрен тебе понадобился apache 2.2? у тя ж я помню на площадке FreeBSD? ффпечь 2.2 тады
Все закончилось на Apache 1.3.37 и PHP 4.4.4 :)
Слушай, ты как сенсей, объясни что значит: "load averages: 1.42, 1.93, 2.12" в топе ?
Цитата: mike
Слушай, ты как сенсей, объясни что значит: "load averages: 1.42, 1.93, 2.12" в топе ?
среднее количество процессов ожидающее в очереди на выполнение. за 1, 5 и 15 минут вроде. если постоянно держится около или больше двух - не очень хорошо.
Цитата: squirL
среднее количество процессов ожидающее в очереди на выполнение. за 1, 5 и 15 минут вроде. если постоянно держится около или больше двух - не очень хорошо.
Вот не понимаю, если в очереди есть хоть один процесс то это уже не хорошо ведь? Почему тогда два? Есть у меня один сервер который показывать 14-30 :) и ничего, работает.
при логине с основной сраницы сайта нет обновления (настойчиво предлагает залогинится )) ).
пару дней назад (мож уже неактуально) не было обновления при отсылки сообщений .
Цитата: foxweb
так я и знал ;) гляжу основной сайт работает, а форум - нет.
хорошо что всё хорошо закончилось.
кстати, ещё хотел бы полюбопытствовать - а где сервера стоят и кто и поддерживает?
хорошо что всё хорошо закончилось.
кстати, ещё хотел бы полюбопытствовать - а где сервера стоят и кто и поддерживает?
А у меня полностью codenet.ru загружал 403 страницу.
Это я ее ставил вренно :)
у одного моего товарища, по его словам, до 1000 доходило :) это называется сервер на последнем издыхании.
навскидку. я бы посоветовал - разгрузить апач каким то проксирующим фронтендом типа ngnix.
кстати - если такая нагрузка это иногда - то ничего. пиковая может и 10 быть. а вот все время - ничего хорошего...
весь вывод top'a стандартный, а не в пики нагрузки, покажи :)