ICQ214-697-723 | Emailinfo@mainsource.ru | Телефон(812) 946-31-81
Все контакты
Автор статьи
Синцов Роман
Проблемы при установке Denwer 3

Проблемы при установке Denwer 3 (релиз от 2010-03-09)

Думаю для любого веб-разработчика, незаменимым инструментом для работы является Denwer.
Денвер — это набор дистрибутивов и программная оболочка, предназначенные для создания и отладки сайтов на локальной Windows-машине, в него входят уже настроенные и готовые для работы Apache, PHP, MySQL.

Новичку он позволяет без множества лишних настроек разворачивать собственный веб-сервер, под которым можно тестировать созданные сайты, скрипты и системы управления. Опытному гуру Denver позволяет, не тратя время на полноценную настройку и загрузку дистрибутивов, развернуть веб-сервер для работы.

Я же хочу рассказать о проблемах, возникших у меня при установке последнего доступного дистрибутива на данный момент — Denwer 3 (релиз от 2010-03-09). Скажу сразу, что впервые при установке Денвера у меня возникли сложности.

Бага возникает после установки Денвера и запуска непосредственно php. Я получаю окно с сообщением:
« syntax error, unexpected BOOL_FALSE in usr\local\php5\php.ini on line 424 »
Ну, собственно ничего страшного, суть понятна, лезу в php.ini, нахожу соответствующую строку

register_long_arrays Off

Очевидно, что ошибка в записи, исправляю на

register_long_arrays = Off

Перезапускаю Denwer. И вдруг снова то же окно с той же ошибкой. Лезу снова в файл, вижу, что моя строка перезаписана на неверную. Очевидно, что этот блок php генерится динамически при старте Денвера.

Лезу в папку « denwer/scripts/init.d/apache.pl »

Далее, используя поиск, ищу в файле параметр register_long_arrays, в результате нахожу строку (строка 74)

$ini =~ s/^[\s;]*(register_long_arrays)[^\r\n]*/$1 Off/mg;

Для того чтобы параметр генерировался правильно, нужно добавить символ =

$ini =~ s/^[\s;]*(register_long_arrays)[^\r\n]*/$1 = Off/mg;

Забегая вперед, скажу, что нужно сразу отредактировать следующую строку (строка 75)

$ini =~ s/^[\s;]*(magic_quotes_gpc)[^\r\n]*/$1 Off/mg;

Точно также нужно добавить символ =

$ini =~ s/^[\s;]*(magic_quotes_gpc)[^\r\n]*/$1 = Off/mg;

Правда, про вторую строку я узнал немного позже, после повторного запуска. Добавлю сюда еще одну деталь, для того чтобы у Вас заработал phpMyAdmin, который тоже входит в состав Денвера, нужно вместо

extension_dir = "/usr/local/php5/ext"

указать полный путь к папке, куда установлен Денвер

extension_dir = "c:\WebServers\usr\local\php5\ext"

Возможно, у кого-то будет работать и с первым вариантом, но лично мне помогло именно это. Ну и вероятно скоро выйдет в свет новый релиз, в котором будут устранены эти недочеты, но думаю в настоящий момент эта информация может оказаться актуальной.

Опубликовано в марте 2010 года.

Anri [13.03.2010 18:41]
Спасибо, выскочила та же проблема, Ваши исправления помогли.
stastop [23.03.2010 12:43]

Большое спасибо! Я уже хотел старый дистриб ставить...

Хам [27.03.2010 07:34]
Спасибо большое! В перле не шарю, пытался сам в том же файле найти почему моё исправление не работает, оказалось все просто!
Alex [29.03.2010 22:03]

Благодарю, помогло!  ошибку я нашёл сам, а вот про Perl-скрипт не додумался.

а то уже хотел предыдущую версию обратно ставить)

михаил solo [04.04.2010 23:09]
то что надо. спасибо.
Артур [17.04.2010 11:19]
Спасибо,
та же пролема, а еще есть проблема с phpmyadmin -- невозможно войти с паролем,
например если в config.inc.php поставить
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['blowfish_secret'] = '123';

то пароль игнорируется и заходит без него
а если поставить
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['password'] = '123';
то пишет: cannot connect Invalid settings
Думаю что не только у меня такая проблема может у кого есть соображения по этому поводу?
asx [18.04.2010 13:58]
Единственный вменяемый ответ на этот вопрос, который я нашел! Спасибо большое!
Синцов Роман [19.04.2010 10:39]
Во-первых нужно добавить юзверя от которого будет коннект с бд
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';     
$cfg['Servers'][$i]['password'] = '';   

Если это не поможет, нужно попытаться проверить можно ли сделать коннект к бд с данной учетки
в консоле выполните
mysql -u root -p
введите пароль, после чего вы должны увидеть приглашение mysql
Думаю в Вашем случае этого не произойдет, если же вопрос останется пишите sintsov.roman@mainsource.ru
alex [20.05.2010 16:41]
$ini =~ s/^[\s;]*(register_long_arrays)[^\r\n]*/$1 = Off/mg;

с этой регуляркой, если в php.ini задать register_long_arrays = On, то после рестарта денвера, значение опять сбрасывается в Off
Синцов Роман [23.05.2010 18:49]
alex
Читайте внимательно, часть параметров в php.ini для денвере генерится автоматически
denwer/scripts/init.d/apache.pl

Перейти к списку статей

АкцияИнтересные акции и предложения

Мы за спорт, поэтому всем заказчикам на проекты, связанные со спортивной тематикой скидка - 20%. Спешите воспользоваться этой уникальной возможностью.

полный список

Наши специалисты имеют высшее образование в сфере компьютерных технологий, а также многолетний опыт работы по своим направлениям.

Мы постоянно повышаем квалификацию наших сотрудников и расширяем список IT-технологий с помощью которых могут быть реализованы любые Ваши задачи.

вакансии Вакансии партнеры Партнеры
отзывы Отзывы сотрудники Сотрудники
faq Вопросы и ответы

Реализованные проекты

vzemle.ru Буровой сайт
Информационный сайт на базе CMS 1С-Битрикс "под ключ".
pro-tours.ru Форум под ключ
Туристический портал для общения, реализованный на популярном движке.

другие

MainSource