Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как майк с форумом боролся.

4
21 ноября 2006 года
mike
3.7K / / 01.10.2002
В общем, один из моих серверов стал медленно, но верно умирать. (В аппаратном смысле слова – какие-то проблемы по питанию.) Настало время переносить сайты на новый сервер.

К слову, 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;
?>


Все, вроде починил…..

После всего этого выясняется что для PHP 5.2.0 нет Zend Optimizer’а и нет ionCube Loader’а. Ищу PHP 5.1.0. :)

Другими словами, администрация CodeNet.Ru приносит свои извинения за неработоспособность форума с 15:00 20.11.2007 до 2:12 21.11.2007
8
21 ноября 2006 года
mfender
3.5K / / 15.06.2005
Не обращай внимания. Перепугались лишь отдельные личности. Да и то, решили, что причина как раз в том, что ты и указал... )))))
Конечно, приятного мало было 403 получить в ответ на адрес.... Но, всяко бывает.

А что за порча такая с сервантами? Неужели всё так сложно со свежими версиями PHP?
267
21 ноября 2006 года
Cutty Sark
1.2K / / 17.10.2002
А меня этот бряк застал во время отправки сообщения. Начал писать ответ - всё было ок, пока писал - форум упал. Первая мысль - ну вот, своим сообщением я сломал форум... :)
4
21 ноября 2006 года
mike
3.7K / / 01.10.2002
Цитата: mfender
Не обращай внимания. Перепугались лишь отдельные личности. Да и то, решили, что причина как раз в том, что ты и указал... )))))
Конечно, приятного мало было 403 получить в ответ на адрес.... Но, всяко бывает.

А что за порча такая с сервантами? Неужели всё так сложно со свежими версиями PHP?


Да нет, все как обычно. Стандартная несовместимость со старыми версиями :)

256
21 ноября 2006 года
foxweb
1.0K / / 27.07.2005
так я и знал ;) гляжу основной сайт работает, а форум - нет.
хорошо что всё хорошо закончилось.

кстати, ещё хотел бы полюбопытствовать - а где сервера стоят и кто и поддерживает?
2
21 ноября 2006 года
squirL
5.6K / / 13.08.2003
майк, прости за дурацкий вопрос, но на кой хрен тебе понадобился apache 2.2? у тя ж я помню на площадке FreeBSD? ффпечь 2.2 тады
4
21 ноября 2006 года
mike
3.7K / / 01.10.2002
Цитата: squirL
майк, прости за дурацкий вопрос, но на кой хрен тебе понадобился apache 2.2? у тя ж я помню на площадке FreeBSD? ффпечь 2.2 тады


Все закончилось на Apache 1.3.37 и PHP 4.4.4 :)

4
21 ноября 2006 года
mike
3.7K / / 01.10.2002
Слушай, ты как сенсей, объясни что значит: "load averages: 1.42, 1.93, 2.12" в топе ?
2
21 ноября 2006 года
squirL
5.6K / / 13.08.2003
Цитата: mike
Слушай, ты как сенсей, объясни что значит: "load averages: 1.42, 1.93, 2.12" в топе ?



среднее количество процессов ожидающее в очереди на выполнение. за 1, 5 и 15 минут вроде. если постоянно держится около или больше двух - не очень хорошо.

4
22 ноября 2006 года
mike
3.7K / / 01.10.2002
Цитата: squirL
среднее количество процессов ожидающее в очереди на выполнение. за 1, 5 и 15 минут вроде. если постоянно держится около или больше двух - не очень хорошо.


Вот не понимаю, если в очереди есть хоть один процесс то это уже не хорошо ведь? Почему тогда два? Есть у меня один сервер который показывать 14-30 :) и ничего, работает.

252
23 ноября 2006 года
koderAlex
1.4K / / 07.09.2005
майк , во тебе пару наблюдаймых багов :
при логине с основной сраницы сайта нет обновления (настойчиво предлагает залогинится )) ).
пару дней назад (мож уже неактуально) не было обновления при отсылки сообщений .
387
23 ноября 2006 года
Ihbif19
421 / / 28.10.2004
Цитата: foxweb
так я и знал ;) гляжу основной сайт работает, а форум - нет.
хорошо что всё хорошо закончилось.

кстати, ещё хотел бы полюбопытствовать - а где сервера стоят и кто и поддерживает?


А у меня полностью codenet.ru загружал 403 страницу.

4
23 ноября 2006 года
mike
3.7K / / 01.10.2002
Это я ее ставил вренно :)
2
24 ноября 2006 года
squirL
5.6K / / 13.08.2003
mike
у одного моего товарища, по его словам, до 1000 доходило :) это называется сервер на последнем издыхании.
навскидку. я бы посоветовал - разгрузить апач каким то проксирующим фронтендом типа ngnix.
кстати - если такая нагрузка это иногда - то ничего. пиковая может и 10 быть. а вот все время - ничего хорошего...
весь вывод top'a стандартный, а не в пики нагрузки, покажи :)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог