Эта тема на forum.dklab.ru


Юрий Насретдинов: Установка двух копий Денвера
Как смешно это не звучит, но можно поставить 2 Денвера и запускать их сразу. То есть например 1 Денвер будет запускаться иногда, а другой - будет всегда запущен в локальной сети с 1 хостом (пример из реальной жизни):

1) Устанавливаем еще один Денвер в папку, не имеющую никакого отношения к Первому Денверу.
2) В файлик hosts записываем все хосты, которые мы хотим использовать, и ставим на него read-only (чтоб какой-нибудь из Денверов их не потер).
3) В httpd.conf во втором [локальном] Денвере меняем порт на 8080 (можно любой другой). Потом в первом действительно ставим BindAdress * (вероятно, в новых версиях это будет Listen ваш_внешний_ip:80) и создаем единственный хост - папку localhost стираем, и ставим вместо неё свой_ip_в_локальной_сети и внутри этой папки папку www. Перезапускаем Первый [в локальной сети] (!!!) Денвер. Должен заругнуться, что на hosts стоит read-only, и без него он жить не может. Пофиг. Мы же уже во втором шаге прописали нужные нам хосты. Так что жмем Enter с чистой совестью.
4) Соотсветвенно, на Первый Денвер можно зайти из локальной сети - http://ваш_ip/ . А на Второй Денвер можно зайти только с локального компа - http://хост:8080/
5) При большой необходимости, можно сменить порт MySQL (с ней могут быть некоторые проблемы) и прописать это в настройках PHP.

Ну и в Первом [в локальной сети] Денвере ставим .htaccess в корень виртуального диска с примерно таким содержанием:


php_value error_reporting 0
ErrorDocument 404 /404.html #создайте в этом случае 404.html. Иначе Денвер со своими подсказками выдаст всю отладочную и никому кроме админа и хакеров не нужную
ErrorDocument 403 /403.html #надеюсь с этим все понятно
ErrorDocument 500 /500.html #а это наверное тоже понятно, зачем


Ну и не забыть везде пароли от админок поменять...
Дмитрий Котеров:
Выделено из темы «Новые советы.»,
расположенной в форуме Денвер::Полезные советы (25 Августа 2003, 21:47).
Дмитрий Котеров:
Маленькая поправка: на файл hosts можно readonly и не ставить. Каждый экземпляр Денвера не станет вычищать никакие хосты, кроме тех, которые он сам же туда и добавил.
Юрий Насретдинов:
Дмитрий Котеров:
Я для надежности. Чтоб точно все работало именно так, как должно. И никаких глупостей типа


127.0.0.1 192.168.2.143


не добавлялось...
Дмитрий Котеров:
А что, такое добавляется? (-;
Юрий Насретдинов:
Дмитрий Котеров:
Представьте себе, да. Это очень мне мешало при настройке видимости из локальной сети. Потому что я пишу 192.168.2.143, а он пишет "соединяемся с 127.0.0.1", а потом я в hosts то, что написано выше обнаружил...
goodman:
Я столкнулся со следующей проблемой:
после запуска второй копии Денвера (та что для "себя", а не для "локалки") при запущенной первой (для "локалки") и последующей выгрузки копии для "себя" выгрузился mysql :(

Справился быть может не самым лучшим способом, но работает:
в папки второго Денвера (для "себя") очистил файл \etc\scripts\init.d\mysql.pl до состояния:

#!perl -w
# +-------------------------------------------------------------------------+
# | Джентльменский набор Web-разработчика |
# | Версия: Денвер-2 2004-10-20 |
# +-------------------------------------------------------------------------+
# | Copyright (C) 2001-2004 Дмитрий Котеров. |
# +-------------------------------------------------------------------------+
# | Данный файл является частью комплекса программ "Денвер-2". Вы не можете |
# | использовать его в коммерческих целях. Никакие другие ограничения не |
# | накладываются. Если вы хотите внести изменения в исходный код, авторы |
# | будут рады получить от вас комментарии и замечания. Приятной работы! |
# +-------------------------------------------------------------------------+
# | Домашняя страница: http://web.dklab.ru |
# | Контакты: http://forum.dklab.ru/denwer |
# +-------------------------------------------------------------------------+

package Starters::Mysql;
BEGIN { unshift @INC, "../_lib"; }

use Tools;
use Installer;
use Starters_Conf;
use StartManager;

return 1 if caller;

Теперь для "локалки" висит постоянно, а для "себя" стартует только с apache, а с mysql проблем нет.
Юрий Насретдинов:
goodman:
Ну, можно и так... В принципе, это по-моему не самый кривой вариант, отнюдь.
Евгений Галашин:
goodman:
... а можно просто удалить из /etc/rc.d/ всё, где есть слово mysql.
Дмитрий Котеров:
Понимаете, при останове Денвер просто грохает все процессы mysqld-max.exe. Он неделает различия, локальные они или нет. Видимо, дело в этом.
Юрий Насретдинов:
Дмитрий Котеров:
Так прикол в том, что две копии mysqld-max.exe он тоже не запускает, если ты не понял =). Он пишет, что MySQL уже запущен (и правильно делает, естественнно, но он ведь не знает, что на самом деле это запущен «чужой» MySQL)

Эта тема на forum.dklab.ru