November 2nd, 2009

UAC (User Account Control) и "белый экран смерти" Drupal

Недавно столкнулся с такой неприятной проблемой: на моем локальном компьютере с операционной системой Microsoft Windows 7 крутился сайт на CMS Drupal. Работал сайт нормально и без каких бы то ни было проблем. Однажды вдруг Drupal перестал запускаться, просто "белый экран смерти" и все. Ни в логах PHP, ни в логах Apache не было никаких ошибок.

Пошарив по интернету, я выяснил, что такой экран может появляться в случае нехватки ресурсов. Конечно, не понятно, почему на одной и той же конфигурации сайту вдруг перестало хватать ресурсов, но, тем не менее, в соответствии с рекомендациями я исправил php.ini - не помогло. Странно было еще и то, что у хостера тот же самый сайт работает, и нет проблем.

Начались переустановки PHP+Apache+MySQL, ставил и последние версии и постарее - ничего не помогало. Drupal все равно выдавал белый экран. Переустанавливал и сам Drupal - результат прежний. Еще нагуглил, что подобная ошибка может быть связана с различием в кодировках. Создавал и пересоздавал базы MySQL и в latin1 и в UTF-8. Ничего не помогало. Просто мистика, все работала и вдруг перестало, причем никаких ошибок-то и нет.

После очередного цикла переустановки, я вспомнил, что незадолго до того, как все сломалось, я отключил механизм UAC (User Account Control).

Вот что говорит Википедии Викпедия про UAC:
" UAC (User Account Control) - компонент Microsoft Windows, впервые появившийся в Windows Vista. Этот компонент запрашивает подтверждение действий, требующих прав администратора, в целях защиты от несанкционированного использования компьютера. Администратор компьютера может отключить UAC в панели управления. "

UAC в ходе своей работы делает копии изменяющихся файлов. Поищите на диске, например, файл php.ini. Вы найдете два таких, один на своем привычном месте, другой в системной папке Windows7.
Видимо, пока UAC работает, Windows7 корректно распознает, откуда надо поднять правильный конфиг, а при отключении происходит непонятный сбой. Но самое интересное, что обе версии конфигов ("настоящая" и "UAC") Apache и PHP корректны. В чем причина "белого экрана" не понятно.
Проблема решилась простым удалением второй копии "UAC"'ского файла.

Петрелевич Сергей
petrelevich@yandex.ru
www.smartyIT.ru

Интересный заголовок на Bankir.ru

Сегодня на bankir.ru появилась интересная статья: http://www.bankir.ru/news/article/2509523
Интересная даже не сама статья, а ее заголовок:
"А.Улюкаев: ЦБ всерьез рассматривал планы одномоментной жесткой девальвации рубля"

При беглом прочтении страницы заголовок читается как:
"А.Улюкаев: ЦБ всерьез рассматриваЕТ планы одномоментной жесткой девальвации рубля"