Как пользоваться denwer php
Перейти к содержимому

Как пользоваться denwer php

  • автор:

Подробное руководство по установке и настройке Denwer

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

Любой современный сайт проходит довольно длительный этап разработки, включающий как создание и доведение « до ума » шаблона, так и наполнение его контентом.

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

Строго говоря, локальный сервер необходим для разработки серьёзных проектов – динамических сайтов, для работы которых необходимо использование php или Perl-скриптов .

Простые одностраничные сайты, работающие только на HTML и CSS , могут быть успешно созданы и протестированы прямо в браузере.

Обновлено: 2014-04-01 13:38:51 АМ Альбина Мокаева автор материала

Почему Denwer используют чаще?

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

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

Данный пакет инструментов для веб-разработчика отличается универсальностью и гибкостью настройки. Он включает в себя HTTP-сервер Apache , препроцессор PHP , компонент PHPMyAdmin для управления базами данных, интерпретатор Perl и ещё большое количество важных и полезных компонентов.

К несомненным плюсам Denwer можно отнести чрезвычайную лёгкость и быстроту установки пакета, а также то, что все файлы Денвера после установки располагаются в одной-единственной папке Webservers .

К вопросу о том, как обновить денвер, следует сказать, что установщик не лезет в реестр операционной системы, поэтому перенести все ваши локальные проекты вместе с базами данных на другой компьютер или диск можно простым копированием папки локального сервера.

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

Главный же недостаток Денвера — возможность установки исключительно в операционной системе Windows.

Итак, ещё раз вкратце отметим ключевые особенности локального сервера Denwer :

  • базовая версия Denwer легко расширяется новыми дистрибутивами и модулями;
  • базы данных управляются при помощи полнофункциональной панели PHPMyAdmin ;
  • присутствует возможность одновременной работы с любым количеством сайтов;
  • предусмотрена возможность установки старых версий PHP4 , MySQL4 , что может быть полезно разработчикам, если с текущей версией localhost denwer сайт не работает;
  • функционал сайта на локальном сервере полностью аналогичен функционалу на удалённом сервере любого хостинг-провайдера. Это позволяет полностью протестировать сайт перед заливкой его на удалённый сервер.

Пошаговая инструкция по установке денвера

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

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

Пошаговая инструкция по установке денвера

Вы не знаете, как запустить сайт на денвере? Просто создавайте проект в папке C:WebServershomelocalhostwww .

Следующий шаг – настройка локального сервера

Одним из преимуществ денвера является простота его настройки. Как настроить денвер правильно, мы расскажем ниже. Если использовать настройки по умолчанию, могут возникнуть проблемы при установке объёмных расширений, либо при импорте большой базы данных.

Стандартные настройки ограничивают объем загружаемых файлов всего лишь двумя мегабайтами. Чтобы снять данное ограничение, необходимо отредактировать в обычном текстовом редакторе файл php.ini (располагается в папке usrlocalphp5).

В строке upload_max_filesize=2M следует изменить параметр 2 на 32, тем самым ограничив объём загружаемого файла 32-мя мегабайтами.

При этом в строке post_max_size=8M восьмёрку следует заменить цифрой 64, так как этот параметр определяет максимальный объём передаваемых данных, и он обязательно должен быть в два, или даже в три раза больше ограничения по объёму загружаемого файла.

Если бы все пользователи выполняли данные рекомендации, то разговоров о том, что не работает денвер, было бы меньше.

Начало работы с локальным сервером

Для того чтобы начать работу с локальным сервером, нужно запустить денвер, кликнув двойным щелчком по иконке « Start Denwer » на рабочем столе, открыть браузер и в адресной строке набрать адрес http://localhost/denwer/ .

Если откроется окно, такое же, как и на картинке ниже, то ваш локальный сервер успешно запустился. Если же появляются сообщения об ошибках, то это значит, что денвер не запускается:

Начало работы с локальным сервером

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

На открытой ранее странице http://localhost/denwer/ найдите раздел « Тестирование Денвера » и в таблице данного раздела перейдите по всем имеющемся ссылкам, каждая из которых активирует один из установленных модулей.

Если проблем нет, возможности будущего сайта на вашем локальном сервере будет полностью соответствовать тому, что вы получите на удалённом сервере хостинг-провайдера:

Начало работы с локальным сервером - 2

В первую очередь проверьте работоспособность PHP и зайдите в сервис администрирования баз данных – PHPMyAdmin .

Если вы не знаете, как зайти в phpmyadmin denwer , просто нажмите на соответствующую ссылку в той же таблице:

Для того чтобы начать разрабатывать новый проект на локальном сервере, нужно просто создать новую папку, например, Moy_Sayt.ru в директории C:WebServershomelocalhostwww . Её имя будет соответствовать названию вашего сайта.

В дальнейшем, чтобы открыть локальный сайт, в браузере необходимо будет прописать название данной папки после http://localhost/ , например, http://localhost/Moy_Sayt.ru/ .

Что делать, если денвер не заработал?

После подключения локального сервера браузер в некоторых случаях выдаёт сообщение, что не запускается денвер. Основная причина чаще всего заключается в его блокировке вашим антивирусным пакетом или брандмауэром.

В этом случае придётся самостоятельно разрешить исходящее соединение для сервера по протоколу TCP на 80 и 443 порты для http и https соответственно. (Располагается оно обычно по адресу C:webserversUSRlocalapacheBINhttpd.exe ).

Кстати, эти же порты может занимать и популярное приложение Skype , поэтому на время работы с локальным сервером его лучше отключить.

Проекты, аналогичные Denwer

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

Так, например, аналог denwer XAMPP предлагает не только набор инструментов для локального сервера, но и полноценную графическую оболочку, которой, как было ранее отмечено, в Denwer не имеется. Поэтому многие разработчики предпочитают именно XAMPP .

Отметим также, что после установки данного пакета виртуального диска не создаётся. (Напомним, что Denwer по умолчанию создаёт новый диск Z, но от этой опции при установке можно отказаться).

Также при наличии желания имеет смысл обратиться к пакету VertrigoServ . В него также входит веб-сервер Apache , PHP , MySQL , SQLite , SQLiteManager , PHPMyAdmin (утилита для администрирования БД MySQL), а также Zend Optimizer (для повышения производительности активных процессов).

Вместо заключения

Как видите, установка и настройка локального сервера Denwer – процесс простой и довольно быстрый. Даже начинающий веб-мастер зная, как установить денвер, сможет выполнить все манипуляции максимум за четверть часа, после чего приступить уже непосредственно к созданию собственного сайта любого уровня сложности.

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

Устанавливаем Денвер

Итак, вы решили установить Денвер. Он имеет нечто вроде ядра, или «сердца» — так называемый «базовый пакет», занимающий около 5.5 MB. Все остальное поставляется в виде пакетов расширений, о которых речь пойдет в других статьях (см. Содержание). Базовый пакет содержит большинство необходимых программ и утилит:

  • Инсталлятор (поддерживается также инсталляция на flash-накопитель).
  • Apache, SSL, SSI, mod_rewrite, mod_php.
  • PHP5 с поддержкой GD, MySQL, sqLite.
  • MySQL5 с поддержкой транзакций.
  • Система управления виртуальными хостами, основанная на шаблонах. Чтобы создать новый хост, вам нужно лишь добавить директорию в каталог /home , править конфигурационные файлы не требуется. По умолчанию уже поддерживаются схемы именования директорий многих популярных хостеров; новые можно без труда добавить.
  • Система управления запуском и завершением всех компонентов Денвера.
  • phpMyAdmin — система управления MySQL через Web-интерфейс.
  • Эмулятор sendmail и SMTP-сервера (отладочная «заглушка» на localhost:25 , складывающая приходящие письма в /tmp в формате .eml ); поддерживается работа совместно с PHP, Perl, Parser и т.д.

Скачать Денвер 3 8.2 MB

Состав: Apache 2.2.22 + SSL, PHP 5.3.13 + XDebug, MySQL 5.5, phpMyAdmin 3.5, многопроектность, работа с Flash-накопителем

Выберите версию PHP
PHP 5.2 старее, но включает Zend Optimizer и больше модулей.

Подготовка к работе с сетью

Чтобы сразу расставить все точки над «ё», давайте убедимся, что ваш компьютер действительно настроен для работы с сетью. Обычно именно так и бывает по умолчанию, но все же.

Многие ассоциируют слово «сеть» с Интернетом, локальной сетью или хотя бы модемом. И совершенно напрасно. Фраза «настроим сеть» может иметь смысл даже в том случае, когда ни одного из перечисленных устройств у компьютера нет! Здесь имеется в виду лишь установка драйверов и сетевых протоколов, которые позволят Apache запуститься и работать на локальной машине.

Итак, самый простой тест: откройте Пуск — Выполнить и введите там команду:

После нажатия Enter вы должны увидеть примерно следующую картину:

Процесс продолжается несколько секунд. Если вы это видите, то все в порядке, и вы можете приступать к инсталляции дистрибутива. Если же, например, окно лишь «мигнет» (откроется и тут же закроется), либо же будут выведены какие-нибудь нелицеприятные сообщения, значит, сетевые протоколы у вас не установлены, а потому читайте дальше.

Вы, наверное, уже поняли, что ваша задача сейчас — добиться, чтобы адрес 127.0.0.1 «пинговался». В случае проблем:

  • Пользователям Windows 98/ME необходимо зайти в Панель управления — Установка и удаление программ — Установка Windows и добавить там Удаленный доступ к сети. При этом автоматически установятся и все нужные протоколы.
  • Пользователям Windows 2000, XP, 2003, Vista, Windows 7 и т.д. — проверить, что команде ping не мешает установленный вручную антивирус или фаервол. Попробуйте отключить эти программы: если помогает, то нужно разбиратся с их настройками.

Установка дистрибутива

Запустите скачанный инсталлятор Денвера. Вы увидите перед собой нечто вроде следующего:

Вас спросят о том, в какой каталог вы хотели бы установить комплекс (по умолчанию используется C:\WebServers , вам нужно лишь нажать Enter , чтобы согласиться с этим выбором). В указанном каталоге будут расположены абсолютно все компоненты системы, и вне его никакие файлы в дальнейшем не создаются (исключая ярлыки на Рабочем столе).

Настоятельно рекомендуем вам устанавливать комплекс в каталог первого уровня — то есть, C:\WebServers , а не, например, C:\My\WebServers . Дело в том, что инсталляторы пакетов расширений ищут базовый комплект именно на первом уровне по всем дискам. И, если не находят, заставляют вас ввести имя директории вручную. Наверное, вам не нужны лишние проволочки при установке расширений.

Далее вам предложат ввести имя виртуального диска, который будет связан с только что указанной директорией. Рекомендуем вам согласиться со значением по умолчанию ( Z: ). Важно, что диска с этим именем еще не должно содержаться в системе — чаще всего так и происходит с диском Z: .

После этого начнется копирование файлов дистрибутива, а под конец вам будет задан вопрос, как именно вы собираетесь запускать и останавливать комплекс. У вас есть две альтернативы:

  1. Создавать виртуальный диск при загрузке машины (естественно, инсталлятор позаботится, чтобы это происходило автоматически), а при остановке серверов его (диск) не отключать. На мой взгляд, это наиболее удобный режим, и я сам пользуюсь только им.
  2. Создавать виртуальный диск только по явной команде старта комплекса (при щелчке по ярлыку запуска на Рабочем столе). И, соответственно, отключать диск от системы — при остановке серверов.

В некоторых версиях Windows 98 имеется ошибка, в результате которой диск с первого раза не отключается — мои эксперименты и исследования показали, что это именно ошибка в subst, а не что-то иное.

Собственно, вот и все. Вы сможете выполнить установку комплекса, имея всего 2 клавиши на клавиатуре: Enter и Y (чтобы ввести Yes).

Первый запуск Денвера

Наконец, установка завершена. Сразу же щелкайте по созданному инсталлятором ярлыку Start Denwer на Рабочем столе, а затем, дождавшись, когда все консольные окна исчезнут, открывайте браузер и набирайте в нем адрес: http://localhost/denwer/ . Выходить из Интернета при этом не обязательно.

Некоторые ОС имеют обыкновение при первом запуске Internet Explorer-а вызывать Мастер подключения. Если это произошло на вашей машине, прикажите горе-мастеру «отвалить» — якобы, вы уже настроили подключение самостоятельно.

Если тестовая страница все же не загрузится, проверьте:

  • Отключен ли у вас прокси-сервер в настройках браузера? Подробнее здесь.
  • Запущен ли Денвер? Если да, нет ли ошибок при щелчке на пиктограмме пера (справа внизу)?
  • Не запущен ли у вас какой-то другой Web-сервер, который мешает Денверу (часто бывает в Windows XP)? Например, Microsoft IIS? Если да, отключите его.

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

Денвер прошел тестирование в следующих ОС:

  • Windows 95/98/ME;
  • Windows NT/2000/XP/2003;
  • Windows Vista, Windows 7.

Работа с виртуальными хостами

Вниманию пользователей Windows NT, 2000 или XP (и старше). Прежде, чем продолжить, убедитесь, что у вас запущена служба «DNS-клиент». Это можно сделать, открыв Панель управления — Администрирование — Службы. В противном случае виртуальные хосты работать не будут.

Если вы занимаетесь разработкой Web-сайтов, вам наверняка хотелось бы обслуживать одним сервером сразу несколько хостов. Иными словами, введя в браузере путь http://localhost , вы попадете на один сайт, а, напечатав http://test1.ru , — совсем на другой (но тоже на локальной машине).

Добавить новый виртуальный хост в Денвере чрезвычайно просто. Пусть это будет test1.ru . Вам нужно проделать следующее:

  • Создать в папке /home директорию с именем, совпадающим с именем виртуального хоста (в нашем случае test1.ru ). Да-да, вы правильно поняли: имя директории содержит точку. Эта директория будет хранить директории документов доменов третьего уровня для test1.ru . Непонятно. Например, имя abc.test1.ru связывается сервером с директорией /home/test1.ru/abc/ , а имя abc.def.test1.ru — с /home/test1.ru/abc.def/ . Ну и, конечно, поддиректория www соответствует адресам www.test1.ru и просто test1.ru . В общем, дешево и сердито. На рисунке показано, как может выглядеть директория /home . Не забудьте создать папку www в директории виртуального хоста, ведь именно в ней будут храниться его страницы и скрипты!
  • Перезапустить сервер, воспользовавшись, например, ярлыком Restart Denwer на Рабочем столе.

Это все, что нужно сделать. А где же, вы спросите, модификация httpd.conf и файла hosts . Ее просто нет. Файл httpd.conf вообще не меняется никогда. Чуть посложнее с файлом hosts : он модифицируется автоматически, подстраиваясь под текущую конфигурацию каталогов в /home . При этом используется весьма интеллектуальный алгоритм для распознавания, какие хосты были внесены Денвером, а какие пользователь добавил самостоятельно, вручную (если он, конечно, захочет это сделать). То есть, автоматическое изменение файла hosts еще не означает, что в нем пропадут все комментарии и вы не сможете больше никогда редактировать его «руками». И, конечно, при остановке комплекса по ярлыку Stop Denwer файл hosts восстанавливается в то состояние, которое и должно быть.

Я не говорю «в предыдущее», потому что это, вообще говоря, не так. Представьте, что комплекс запущен и пользователь открыл hosts в Блокноте и добавил в него какой-нибудь хост. Например, он назначил домену microsoft.ru тот же IP-адрес, что имеет porno.com . После останова серверов этот адрес не удалится, а будет сохранен в исходном виде, в то время как все виртуальные хосты «отключатся». Действует принцип: «вычищай только то, что нагадил сам».

Воюем с Контроллером удаленного доступа

Как только вы начнете создавать виртуальные хосты, Контроллер удаленного доступа на некоторых системах может сойти с ума. Он будет при первом открытии хоста предлагать вам альтернативу наподобие следующей:

или даже вот так:

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

Ни в коем случае не давайте ему ответ Автономно, слышите.

Но если ваш Контроллер удаленного доступа закусил удила и на ответ Подключиться начинает яростно набирать номер на модеме, идите в Сервис — Свойства обозревателя — Подключение и в разделе Настройка удаленного доступа поставьте флажок Не использовать (или Never Dial a connection).

Это рекомендации для пользователей Windows 2000. На всех остальных системах пункты меню и кнопки могут называться немного по-другому, но смысл остается тот же.

Воюем с прокси-сервером

Многие версии Windows поставляются со включенным по умолчанию прокси-сервером. Это может вызвать кое-какие проблемы при работе с Денвером (впрочем, легко разрешимые).

  • Если после запуска Денвера страница http://localhost не работает, вероятнее всего, вам нужно отключить прокси-сервер в настройках браузера. Для «простых» хостов (вроде localhost , test , dklab и т.д.) обычно достаточно флажка «Не использовать прокси-сервер для локальных адресов» на вкладке Свойства обозревателя — Подключение — Настройка сети — Дополнительно.
  • Если localhost работает, а test1.ru (и вообще хосты, имя которых состоит из нескольких частей) — нет, то, вероятно, ваш браузер не может распознать последний хост как локальный. Такое, увы, бывает. Вам необходимо либо полностью отключить прокси-сервер, либо же перечислить хосты в списке Подключение — Настройка сети — Дополнительно — Исключения.

Решение проблем

Прежде, чем кидаться задавать вопрос в форум, проверьте: возможно, ответ уже есть в списке часто задаваемых вопросов по Денверу. С вероятностью 85% так и окажется: ведь вы не первый, кто использует проект.

Если же в FAQ ответа на ваш вопрос нет, задайте его в форуме.

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

Доступ к Денверу из локальной сети или Интернета

Проекты, заведенные в Денвере, по умолчанию не доступны из локальной сети. Это достигается благодаря тому, что все виртуальные хосты имеют IP-адрес 127.0.0.1 , всегда обозначающий «текущая локальная машина».

Тем не менее, все же существует возможность назначить тому или иному виртуальному хосту «внешний» IP-адрес, доступный из вашей локальной сети или даже Интернета (если компьютер имеет постоянный IP-адрес в Интернете).

Помните: Денвер — это инструмент разработчика, а не средство хостинга. Несмотря на то, что проекты в Денвере можно открыть для всеобщего доступа, мы категорически не рекомендуем это делать. Дело тут в безопасности: Денвер, как правило, запускается с правами Администратора, а значит, скрипты, запущенные под его управлением, могут делать на машине все, что угодно. Малейшая «дыра» в безопасности скрипта откроет хакеру доступ к вашей машине.

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

Определение вашего IP-адреса

Для начала следует узнать, какой IP-адрес назначен вам в локальной сети или Интернете. Проще всего это сделать, открыв Командную строку Windows и набрав там:

ipconfig

Вы увидите что-то типа следующего:

Настройка протокола IP для Windows WiFi - Ethernet адаптер: DNS-суффикс этого подключения . . : IP-адрес . . . . . . . . . . . . : 192.168.0.49 Маска подсети . . . . . . . . . . : 255.255.255.0 Основной шлюз . . . . . . . . . . : 192.168.0.1

В данном случае внешний IP-адрес машины в локальной сети — 192.168.0.49 . В списке могут быть перечислены сразу несколько сетевых интерфейсов (если ваш компьютер оборудован несколькими сетевыми картами или беспроводными устройствами). В этом случае вам нужно определить, какой из интерфейсов является внешним, доступным из локальной сети. (IP-адреса, начинающиеся с 192.168 или 10 , зарезервированы только для доступа из локальной сети, но не из Интернета. Т.е. они являются «приватными».)

Убедитесь, что ваш IP-адрес является статическим, т.е. не меняется при следующем включении машины или перезагрузке. Если IP-адрес выдается динамически, то не существует простого способа, позволяющего подключить к нему Денвер.

Настройка межсетевого экрана (брандмауэра, фаервола) Windows

В большинстве Windows-систем встроенный (либо установленный вами вручную) межсетевой экран или антивирус блокируют подключения с внешних машин к текущей. Это сделано по соображениям безопасности. Конечно, в случае, если вы открываете сайт наружу, эту блокировку следует отключить, в противном случае сайт никто не увидит.

Наша цель — разрешить Windows подключения к порту 80 (протокол HTTP) вашего IP-адреса 192.168.0.49 , на котором будет «висеть» Apache. Приведем инструкции, как это сделать в Windows XP:

  1. Откройте Пуск — Панель управления, выберите Брандмауэр Windows.
  2. Перейдите на вкладку Исключения.
  3. Нажмите кнопку Добавить порт, в поле Имя введите ваш IP-адрес, а в поле Номер порта укажите 80.

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

Простой способ открытия сайта наружу

Предположим, ваш IP-адрес равен 192.168.0.49 , как в примере выше. Самый простой способ заставить Денвер открывать по адресу http://192.168.0.49 определенный сайт — это расположить документы сайта в директории:

/home/192.168.0.49/www

Да, имя директории содержит точки! Не забудьте также перезапустить Денвер.

Более того: если ваш провайдер выдал вам не только IP-адрес, но также и связанное с ним доменное имя, то сайт будет сразу же доступен по этому доменному имени. В случае статического IP-адреса домен выдается почти всегда, вам лишь нужно узнать его у провайдера. Например, если ваше доменное имя равно abcd.ints.ru (провайдер Корвет-Телеком НЭКСТ), то сайт будет доступен по адресу http://abcd.ints.ru .

Другой способ назначения IP-адреса сайту

Если у вас уже имеется виртуальный хост в Денвере и вы не хотите переименовывать его директорию документов, то вы можете назначить сайту свой собственный IP-адрес и сделать его доступным снаружи. Предположим, что ваш хост хранится в директории /home/mysupersite/www . Чтобы назначить ему IP-адрес 192.168.0.49 , необходимо создать файл /home/mysupersite/.htaccess и добавить в него строчки:

## Файл /home/mysupersite/.htaccess ## Укажите здесь ваш внешний IP-адрес, а не 192.168.0.49! # dnwr_ip 192.168.0.49

Кстати, вы можете узнать, какие еще существуют директивы, заглянув в файл /home/custom/.htaccess .

Перезапустите Денвер. Проверьте, что по адресу http://192.168.0.49 (вместо 192.168.0.49 , конечно, нужно подставить ваш собственный IP-адрес) открывается ваш сайт /home/mysupersite/www .

Предупреждение службы безопасности

Напомним еще раз, что Денвер — это не законченный и надежный Web-сервер, это — всего лишь инструмент, позволяющий отлаживать (тестировать) сайты, «не выходя из дома». Любая попытка использовать его в других целях может быть небезопасна.

Вообще, настроить можно все, что угодно, другое дело — нужно ли это. Помните, что открытый для окружающего мира Web-сервер представляет потенциальную уязвимость в защите вашей машины. Например, злоумышленник может проникнуть через не до конца отлаженный скрипт. Т.к. Денвер запускается с правами Администратора (то есть, с максимальными правами в системе), то любой скрипт, даже самый маленький, может делать все, что ему заблагорассудится. Давайте предположим, что вы написали вроде бы безобидный скрипт test.pl , который делает следующее:

#!/usr/bin/perl -w use CGI::WebIn; use CGI::WebOut; Header(«Content-type: text/plain»); open(F, $IN) or die «Could not open\n»; while()

Программа, казалось бы, просто печатает содержимое файла, указанного в параметре fname . Например, http://localhost/cgi/test.pl?fname=test.pl напечатает исходный код программы. Однако нетрудно заметить, что вызов open в таком виде небезопасен. Например, зайдя по адресу /cgi/test.pl?fname=|dеl+/s/q+c:\windows , в программе будет выполнено:

open(F, "|dеl /s/q c:\\windows") or .

Это приведет к немедленному уничтожению всей директории Windows!

Возможно, вы скажете, что localhost — на то и localhost , чтобы работать лишь с текущей машины. Если вы открыли доступ наружу по инструкции, приведенной выше, то все именно так. Тем не менее, в случае неправильной настройки Apache можно проникнуть на localhost и извне (если сервер открыт). Это делается очень просто:

C:/> telnet server.ru 80 GET /cgi/test.pl?fname=|dеl+/s/q+c:\windows HTTP/1.1 Host: localhost здесь нужно просто нажать Enter

Вывод: если у вас нет значительного опыта в администрировании серверов, установка Web-сервера, доступного извне, может быть опасной. Это особенно относится к счастливым обладателям выделенных каналов в Интернет. Одно неверное движение, и однажды утром вы проснетесь с только что отформатированным жестким диском (в лучшем случае).

Настройка инструментария для работы с PHP (Денвер)

Если вы уже достаточно хорошо разобрались с технологиями создания веб-приложений на HTML и CSS, то самое время приступить к изучению серверного языка программирования PHP. Насколько вам уже известно, обычный файл с расширением .html открывается в браузере простым кликом на ярлычке. То есть, для html-документов не нужны какие-либо дополнительные программы и утилиты, и браузер легко открывает созданный вами файл. PHP – это серверный язык программирования , и его интерпретатор может работать только на стороне сервера.

Многие начинающие программисты не до конца понимают смысл вышесказанного. «Подумаешь, язык!» – говорят они и сразу же начинают писать в блокноте свою первую программу, которая по идее должна вывести на экран фразу «hello, world»:

Программист сохраняет этот код, например, в файле index.php и тут же пытается открыть его в браузере. И что он видит на экране? Те же три строчки кода:

и больше ничего! Недоумение новичка сменяется разочарованием – PHP-код не работает…

Все дело в том, что браузер «не понимает» язык PHP и файлы с расширением .php открывает как обычные текстовые документы. А вот если этот код будет запущен на сервере, то сервер поймет его так: «создать строку ‘hello world’ и отправить ее в браузер пользователя». Поэтому, чтобы изучить язык PHP и научиться использовать его для создания страниц сайта, нужно иметь дело с настоящим веб-сервером.

Что же делать? Конечно, можно поискать в сети интернет какой-нибудь бесплатный хостинг, создать на нем небольшую страничку и приняться за изучение серверного языка программирования. Однако, это крайне неудобно. Во-первых, вы будете полностью зависимы от стороннего ресурса, во-вторых, неудобство возникает в связи с постоянной пересылкой данных по ftp-протоколу.

Но существует замечательное решение этой проблемы – установить у себя на компьютере полноценный локальный сервер Apache. Такая возможность появилась благодаря программному пакету «Денвер» («джентельменский набор веб-разработчика»), который был создан программистом Дмитрием Котеровым и уже долгое время распространяется бесплатно.

В состав этого дистрибутива входит инсталлятор сервера Apache (один из самых распространенных) с поддержкой PHP5, базы данных mysql и эмулятора почтового клиента sendmail. После установки Денвера, на вашем компьютере появится настоящий сервер, и вы сможете создавать полноценные веб-приложения.

Итак, приступим к установке. Первым делом вы должны скачать с официального сайта установочный пакет Денвер 3 и запустить его на своей машине.

После запуска на экране появится черное окошко с подсказками по установке. Будьте внимательны, выбирайте те пункты, которые предложены как самые оптимальные. Ничего сложного – несколько нажатий на кнопки – и у вас на винчестере создается виртуальный диск (по умолчанию «z»), на котором размещаются все необходимые программы и компоненты пакета Денвер. Обратите внимание, что при этом на диске «С» также создается папка «WebServers» с аналогичным продублированным содержимым.

Итак, после завершения установки на рабочем столе у вас должны появиться 3 новых ярлыка «Start denwer», «Stop denwer» и «Restart denwer».

Нетрудно догадаться, что для запуска локального сервера необходимо использовать первый из них — «Start denwer».

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

Если они не появились, значит вы что-то сделали неправильно.

Кроме этих значков ничто на компьютере не будет сигнализировать о том, что локальных сервер Apache начал свою работу. Теперь самое время открыть браузер и узнать, как это все работает.

Чтобы усилить впечатление, отключите вообще доступ к Интернету – ведь теперь у вас есть свой личный Интернет на компьютере!

Чтобы Денвер работал без каких-либо неприятных сбоев, вам необходимо будет изменить настройки скайпа (если вы, конечно, им пользуетесь). Войдите в skype, выберите «инструменты» – «настройки» – «дополнительно» – «соединение» и уберите галочку с пункта «использовать порты 80 и 443 в качестве входящих альтернатив». Это нужно обязательно сделать из-за того, что Денвер также использует порт 80.

Наберите в адресной строке браузера адрес: http://localhost/denwer/. В случае успешной установки Денвера вы увидите станицу приветствия с поздравлением: «Ура, заработало!». Это означает, что теперь в вашем распоряжении есть мощный инструмент для разработки полноценных серверных и браузерных веб-приложений!

Теперь проверьте работу базы данных mysql, набрав в браузере адрес http://localhost/Tools/PHPMyAdmin/ . На экране вы должны увидеть примерно следующее:

Работу с mysql мы рассмотрим в следующих уроках, а пока что продолжим настройку сервера.

Самое время рассмотреть структуру папок вашего локального сервера. Закройте (или сверните браузер) и перейдите на ваш новый виртуальный диск Z:. Здесь вы увидите несколько папок, содержащих все необходимое программное обеспечение и файлы настроек сервера. Мы не будем пока разбираться в «начинке» этих папок, а просто сделаем последнюю необходимую настройку – изменим кодировку сервера Apache, которой по умолчанию является windows-1251, на современную UTF-8.

Откройте файл httpd.conf, который расположен в каталоге /usr/local/apache/conf/httpd.conf и с помощью поиска найдите в нем строчку «AddDefaultCharset windows-1251». Измените эту строку на «AddDefaultCharset utf-8». Сохраните файл и, чтобы изменения вступили в силу, перезапустите Денвер – «Restart Denwer». Иногда случается, что Денвер после такой перезагрузки работает неправильно – вместо двух значков на панели задач виден лишь один. В таком случае полностью остановите Денвер («Stop Denwer») и снова запустите («Start Denwer»).

Не забывайте, что после любых изменений в настройках сервера, Denwer требует перезапуска!

Итак, локальный сервер установлен и настроен, и мы теперь можем написать свою первую программу.

На диске Z: найдите папку home – это основная рабочая папка, в которой будут содержаться все ваши проекты. Именно эта папка и никакая другая предназначена для хранения файлов веб-приложений!

В папке home создайте папку вашего нового проекта, например, «mysite». Войдите в созданную папку и создайте в ней еще одну с именем «www». Вот в этой папке «www» и будут содержаться файлы вашего сайта. Обратите внимание – это стандартная процедура создания проекта и на такой технологии основана работа всех серверов.

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

В папке «www» создайте файл index.php с таким содержимым:

Сохраните файл. Откройте браузер и пропишите в адресной строке:

На экране вы увидите строчку: hello world! (уже обработанную PHP и содержащую результат выполнения без спец символов и операторов вроде )

Поздравляем! Только что вы создали свой первый сайт на языке PHP! В следующих статьях мы более подробней опишем возможности этого языка.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *