VDS Хостинг для Ваших проектов

Локальный сервер Denwer

Декабрь 24th, 2012 Рубрики: Интернет, Сервисные

Установка локального сервера – дело пожалуй неизбежное для каждого веб-мастера. Сегодня варианты локальных веб-серверов не столь малочисленные как несколько лет назад. А вот я с Денвером познакомился в 2009 году, когда только начинал изучать сайтостроение. С тех пор он мне верно служит. Хотя пакет Денвер очень популярный в сети и о нём много уже написано, считаю, что будет несправедливо, чтобы не было места на моём блоге для этого просто превосходного и очень мощного программного пакета для создания локального веб-сервера на компьютере.

Как можно узнать с официального сайта, название ДеНВеР значит Джентльменский набор веб разработчика. В этой статье я хочу познакомить читателя с этим пакетом, его возможностями, структурой, как установить и начать работу с ним. Ну а кто уже знаком может чем дополнит, или поделится своим мнением…

Несколько слов, для тех, кто возможно не понял зачем нужен локальный сервер, в частности Denwer, что это такое? Локальный сервер – это набор программ, позволяющих эмулировать на вашем персональном компьютере работу веб-хостинга. Таким образом веб-мастеру, особенно начинающему можно проверять работу сайтов, отлаживать скрипты на php, работать с базой данных как на настоящем хостинге – сервере в интернете. Но без доступа в интернет и под любым желаемым именем будущего сайта. Подробнее о том как это происходит далее и пойдёт речь. Но не отступая от традиции хочу привести несколько положительных характеристик Денвера, почему я им пользуюсь.

  • Денвер – бесплатный локальный сервер.
  • Дистрибутив имеет малый размер (7-8 Мб), особенно по сравнению с другими аналогами. Этот фактор лично для меня много значит.
  • Полностью портабельный. Можно установить в любую папку и даже на флэшку, съёмный диск.
  • Базовый пакет содержит все самые необходимые компоненты: Apache, MySQL, phpmyAdmin, SMTP-сервер.
  • Расширяемость. На сайте Денвера также можно скачать дополнительные компоненты, если вам чего-то не хватает. Таким образом пользователь устанавливает только то, что ему нужно.
  • Быстрый старт. Буквально одним щелчком мыши можно развернуть на своём компьютере вполне полноценный веб-сервер, который при том потребляет совсем немного ресурсов.
  • Русскоязычный. Инструкции, документация, сайт – всё на русском языке, поэтому не возникает трудностей в поиске решения возможных проблем.

Минусы очень незначительные. Что мне не понравилось:

  • Не очень приятный интерфейс установщика в окне командной строки.
  • Необходимость ввода своих данных для скачивания базового пакета и других компонентов.
  • Предназначен только для Windows.

Ну а теперь к непосредственному знакомству с Денвером и приёмам работы с ним.

Как установить Денвер

Установка Денвера очень простая. Сначала скачиваем базовый пакет с официального сайта. Дальше убедитесь, что на компьютере настроен «Удалённый доступ к сети». Если работает интернет, то это уже сделано.

Запускаем скачанный дистрибутив. Откроется окно браузера с сообщением об установке. Нужно его закрыть. Дальше надо ответить с клавиатуры на несколько вопросов мастера:

Установка Денвера

Сначала надо указать в какую папку нужно установить Денвер. По-умолчанию предлагается C:\WebServers\, и у меня стоит именно там. Но вы можете указать другую и указать другой диск. Также мастер спросит, какой виртуальный диск создать для нужд сервера. Если буква Z: уже используется для каких-то целей, то укажите другую свободную букву.

После завершения копирования файлов, нужно будет указать тип запуска виртуального диска:

  1. вместе с системой;
  2. вручную.

Здесь каждый рекомендует по-своему. Лично мне не нужен каждый раз этот диск и не каждый день я работаю с Денвером, поэтому советую выбрать 2-ой вариант. Но если вы выберите неправильный, – это не проблема. Его можно поменять в настройках. Ну и последний вопрос касается создания ярлыков на рабочем столе для запуска и остановки сервера. Лучше их создать, так удобнее. И после этого должно открыться окно браузера, сообщающее об успешной установке. Всё, дело сделано, достаточно просто. Теперь надо убедиться, что Denwer работает.

Как запустить Денвер

Запускается он через ярлык "Run", созданный на рабочем столе. Если вы отказались от создания ярлыков, то нужно запустить файл

C:\WebServers\denwer\Run.exe

На время появляется чёрное окно командной строки и закрывается. В трее должны появится два значка: шляпы и пера. Это значит, что Денвер загрузился. При первом запуске брандмауэр Windows и антивирус могут выдавать предупреждение о блокировке компонентов Денвера. Обязательно разрешите их работу! Теперь откройте свой любимый браузер и перейдите по адресу:

http://localhost/denwer/

Вы должны увидеть тестовую страницу, с надписью "Ура заработало".

Успешная установка Денвера

После завершения работы с сервером его надо остановить. Это делается командой "Stop", через ярлык из рабочего стола. Опять появляется окно с протоколом завершения работы и после закрывается.

Как создать сайт на Denwer

Всё очень просто. В папке Z:\home\ создайте папку с именем, по которому хотите работать со своим будущим сайтом, например test-site.net Затем в той папке создайте ещё одну с именем ‘www’ – это обязательно, она соответствует ‘public_html’ или ‘htdocs’ на обычных виртуальных хостингах. Таким образом мы создаём новый виртуальный хост. Их можно создать сколько нужно, для каждого проекта свой. Теперь все файлы/каталоги будущего сайта размещайте в этой папке www. После создания этой структуры запустите Denwer, а если он уже работал, то перезапустите по ярлыку "Restart". Это очень важно. Ибо без перезапуска новый хост не будет доступен.

Что происходит? В файл hosts Denwer при запуске дописывает все находящиеся виртуальные хосты (каталоги в Z:\home\) и привязывает их к локальному IP 127.0.0.1, на котором и работает сам сервер, обслуживающий наши сайты. После выключения всё восстанавливается в прежнее состояние.

После этого сайт будет доступен в браузере по адресу, который вы назначили.

Важно! Часто бывает, что Денвер не работает при включенном Скайпе. Такая проблема известна и состоит в том, что Skype занимает порты 80, 443, которые нужны Апачу. Чтобы устранить эту проблему, нужно в Скайпе перейти в «Инструменты» – Настройки – Соединение и снять галочку "Использовать порты 80 и 443…" После перезапустить обе программы.

Сайт в Денвере отображается крякозябрами

Такое иногда происходит, если используется кодировка utf-8. Я сам столкнулся с такой проблемой. На страницах был meta-тэг с прописанной кодировкой, и сам файл был сохранён в utf-8 правильно, а в браузере постоянно крякозябры. Причина в том, что Apache выдаёт в ответ в заголовке «Content-Type» неправильную кодировку. Чтобы решить эту проблему нужно создать в корне сайта (в папке www) файл .htaccess с таким содержанием, или добавить такую строчку:

AddDefaultCharset UTF-8

Естественно вместо ‘UTF-8′ пропишите ту кодировку, на которой написан сайт.

Настройка Денвера

Настройки Денвера хранятся в файле в файле:

Z:\denwer\CONFIGURATION.txt

Если вы во время установки задали неправильные параметры или по другой причине хотите переконфигурировать его, то нужно отредактировать этот файл, открыв его в блокноте.

  • subst_drive – определяет букву виртуального диска. Чтобы поменять её, напишите нужную в этой директиве.
  • runlevel – устанавливает конфигурацию 1 или 2, т.е. автоматическую и ручную загрузку.
  • Дальше содержатся имена и пути других компонентов комплекса.

Денвер и создание базы данных в phpmyAdmin

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

Чтобы запустить phpmyAdmin наберите в адресной строке браузера:

http://localhost/tools/phpmyadmin

Загрузится стартовая страница этого инструмента, похожая на ту, что ниже на скриншоте. Слева содержится список баз данных, справа – информация текущей выбранной страницы (управление пользователями, просмотр БД, структура и т.п.). По-умолчанию существует пользователь ‘root’ с пустым паролем и всеми правами. Для тестирования своих сайтов можно использовать учётную запись этого пользователя, но можно создать и отдельного пользователя или нескольких, назначив им ограниченный набор прав.

Денвер - создание базы данных в phpmyadmin

Чтобы создать/изменить пользователя, перейдите по ссылке «Привилегии»: будет доступен для редактирования список уже существующих пользователей, а также ссылка "Создать нового пользователя".

Чтобы работать с существующей базой данных, выберите её из списка, как показано на скриншоте. А чтобы создать новую, просто введите её имя (латиницей) в поле «Создать новую БД» и выберите кодировку, которая будет использоваться для поиска и сравнения текстовой информации. Очень важно, чтобы она совпадала с кодировкой сайта, на котором она будет использоваться, иначе могут быть проблемы.

Чтобы экспортировать базу данных, выберите её из списка, затем в меню сверху перейдите по ссылке «Экспорт» и выберите нужный формат (SQL) и поставьте галочку (сохранить в файл). Не забудьте также выделять все таблицы, чтобы сохранить всю БД. Импорт делается аналогично, по ссылке «Импорт», однако в старых версиях её нет, поэтому нужно поступить так: слева над списком баз данных щёлкнуть по значку SQL а в открывшемся сплывающем окне выбрать "Импорт файлов" и указать нужный файл, в котором содержится сохранённая БД, которую нужно импортировать.

Это самые основные принципы, разобраться дальше в работе совсем несложно. А теперь ещё хочу уделить несколько предложений практической стороне работы с Денвером.

Отправка писем в Denwer

В этот пакет также входит также эмулятор почтового сервера sendmail. С его помощью можно тестировать отправку писем с помощью php-функции mail(). Все отправленные письма отправляются не на реальные адреса указанные в адресате, а складываются в папку Z:\tmp\!sendmail\ в формате eml. Если понадобится прочитать письмо или просто проверить, что оно отправлено – загляните туда.

Перенос сайта на Денвер и на хостинг

Перенести сайт на Денвер с хостинга – это вполне обычное дело. Как правило это делается для разных работ на сайте по оптимизации, переработке, отладке и т.п. Затянуться это может надолго, да и обычный хостинг может ругаться на всякие такие эксперименты. Чтобы осуществить перенос сайта на локальный сервер нужно сделать полную его копию (файлов и БД).

  1. Зайдите в phpmyAdmin на хостинге и сделайте экспорт базы данных в формате SQL (если используется конечно).
  2. Скачайте все файлы с хостинга с сохранением структуры каталогов.
  3. Измените конфигурационные файлы, прописав в качестве хоста sql-сервера ‘localhost’, пользователя, которого вы создали раньше через phpmyAdmin или ‘root’ и пароль.
  4. Создайте виртуальный хост с желаемым именем для работы на локальном сервере.
  5. Скопируйте файлы сайта в папку ‘www’
  6. Создайте базу данных в денверовском phpmyAdmin с таким же именем как на хостинге, или измените его в конфигах сайта на нужное. Импортируйте БД сохранённую на первом шаге.
  7. Перейдите по созданному на 4 шаге адресу виртуального хоста. Если всё сделано правильно, сайт должен работать.

Чтобы перенести сайт с Денвера на хостинг, нужно делать так же, но в обратном порядке.

  1. Зайдите в phpmyAdmin Денвера и сделайте экспорт базы данных в формате SQL.
  2. Создайте базу данных в phpmyAdmin на хостинге. Импортируйте БД сохранённую на первом шаге.
  3. Измените конфигурационные файлы, прописав в качестве хоста sql-сервера, пользователя, пароль на те, что выданы хостером. Имя БД укажите то, что создали на первом шаге.
  4. Загрузите все файлы с локального виртуального хоста с папки ‘www’ в папку ‘public_html’ с сохранением структуры каталогов.
  5. Перейдите по настоящему доменному имени сайта в браузере. Если всё сделано правильно, сайт должен работать.

Denwer и cURL

cURL – очень распространённая библиотека для реализации удобного соединения с серверами по разным протоколам. Является расширением PHP. Почти на всех хостингах она установлена, однако в стандартный комплект Денвера почему-то не вошла. Поэтому сайты использующие её, не будут работать под Денвером. Чтобы устранить этот недостаток нужно установить cURL на Денвер. Как это сделать? Для начала надо проверить установлена ли cURL перейдите по адресу:

http://localhost/Tests/PHP5/index.php5

Если есть строчка ‘cURL support’ со значением ‘enabled’, то всё ОК, иначе посмотрите в самой первой строке версию PHP. Теперь поищите в сети и скачайте cURL.dll точно такой же версии, это очень важно, чтобы версии были одинаковы, иначе работать не будет. Скачанную библиотеку поместите в каталог:

Z:\usr\local\php5\ext\

В файле php.ini каталогом выше найдите такую строчку: ;extension=php_curl.dll
Раскомментируйте её удалив точку с запятой и сохраните его. Перезапустите Денвер. Если появляются сообщения об ошибках, скорее версия cURL не подходит, поищите другую. Если всё запустилось удачно, ещё раз перейдите и проверьте phpinfo, как я указал выше и убедитесь, что ‘cURL support’ установлен в ‘enabled’. Теперь вы можете использовать функции этой библиотеки.

Как удалить Denwer

Не очень понимаю, зачем понадобится удалять такой чудесный софт, но тем не менее вопрос довольно распространённый. Здесь всё очень просто. Обязательно остановите Denwer перед удалением. Удаляете папку, где устанавливали Денвер, стандартно

C:\WebServers\

Если использовалась конфигурация ‘main’, и в автозагрузке есть ярлык для подключения виртуального диска: удалите его. Также удалите ярлыки с рабочего стола. Выполните команду:

subst Z: /d 

Вместо Z: укажите букву, которую используете. Готово.

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

Хорошее видео по установке Денвера

Все права на видео принадлежат Артему Демишеву

Скачать Denwer с официального сайта
FAQ по Денверу с описанием решений многих проблем
http://www.youtube.com/watch?v=9IpMHgKivTI – ещё одно неплохое видео по установке.
Понравился пост? Поделись с другими!
Теги: , , , , ,

Есть 6 коммент. к “Локальный сервер Denwer”

  1. Июль 22nd, 2013 at 13:38
    1

    Долго не мог разобраться почему не отправляется почта с тестируемого сайта на 1С-битрикс на локальном компьютере. Дошло. Они группируются в папку sendmail в tmp. Если кому пригодится!

  2. Май 25th, 2015 at 16:52
    2

    Спасибо за полезную и нужную информацию!

  3. Сентябрь 12th, 2015 at 09:22
    3

    Здравствуйте! Я перенесла сайт на хостинг. Его видят все желающие, кроме меня. На моем компьютере он загружается исключитеьно с локального хостинга. Поэтому, я думаю, люди от него изьавляются. В интернете ответ я не нашла. Удалять Денвер мне очень не хочется. Стоп Денвер не помогает. Ping sAlfyTrip.ru возвращает IP 127.0.0.1. Подскажите, что делать? Как запустить сайт из интернета?

    • Сентябрь 17th, 2015 at 18:56
      4

      Это потому что у Денвере у вас такой же адрес задан как и на хостинге. Поэтому при работе Денвера отдаётся сайт с локального хоста. Нужно выключить Денвер. Если остановка почему-то не помогает, надо очистить кэш браузера и DNS. Также проверьте файл hosts – если там прописан IP 127.0.0.1 для вашего домена, то замените на актуальный адрес сервера хостинга.

    • Январь 8th, 2016 at 00:27
      5

      Просто останови Денвер и открой сайт через браузер которым ты обычно не пользуешься.

  4. Октябрь 8th, 2016 at 09:14
    6

    Очень хорошая программа для разработчиков сайтов и для тех кто учит пхп. Я например установил денвер себе на флешку и могу показывать сайты клиентов прямо у них в офисе. Очень удобно.

Написать комментарий

   b2bbonbone