Основы языка PHP.
Приложение 1.
Пакет "Денвер"
В этом приложении приводятся основные сведения о пакете "Денвер".
В шагах есть такие ссылки:
где содержится код на языке РНР. Для того, чтобы посмотреть результаты его
выполнения нужно установить интерпретатор языка программирования PHP.
PHP можно установить отдельно, а также можно поставить комплекс, в который
PHP входит как составная часть. Ниже рассматривается процесс установки
такого комплекса под названием Денвер.
Итак, вы решили установить комплект Денвер-2. Как и любой комплекс, он имеет нечто вроде ядра,
так называемый "базовый комплект", занимающий всего около 2 MB. Все остальное
поставляется в виде пакетов расширений. Базовый комплект содержит большинство необходимых программ и утилит:
- Apache, SSI, mod_rewrite, mod_php.
- PHP4 с поддержкой GD и MySQL.
- MySQL с поддержкой транзакций (mysqld-max).
- Систему управления виртуальными хостами, основанная на шаблонах. Чтобы
создать новый хост, вам нужно лишь добавить директорию в каталог /home,
править конфигурационные файлы не требуется. По умолчанию уже поддерживаются схемы
именования директорий многих популярных хостеров; новые можно без труда добавить.
- Систему управления запуском и завершением.
- phpMyAdmin — система управления MySQL через Web-интерфейс.
- Ядро Perl без стандартных библиотек (они поставляются отдельно).
- Эмулятор sendmail (отладочная "заглушка", складывающая приходящие письма
в /tmp); поддерживается работа совместно с PHP и Perl.
- Инсталлятор (нечто вроде InstallShield).
Подготовка к работе с сетью
Сначала нужно убедиться, что ваш компьютер действительно
настроен для работы с сетью. Обычно именно так и бывает по умолчанию, но все же...
Замечание.
Многие ассоциируют слово "сеть" с Интернетом, локальной сетью или хотя бы модемом.
И совершенно напрасно. Фраза "настроим сеть" может иметь смысл даже в том случае, когда
ни одного из перечисленных устройств у компьютера нет! Здесь имеется в виду лишь установка
драйверов и сетевых протоколов, которые позволят Apache запуститься и работать на локальной машине.
Итак, самый простой тест: откройте Пуск | Выполнить и введите там команду:
После нажатия Enter вы должны увидеть примерно следующую картину:
Процесс продолжается несколько секунд. Если вы это видите, то все в
порядке, и вы можете приступать к инсталляции дистрибутива. Если же,
например, окно лишь "мигнет" (откроется и тут же закроется), либо же будут
выведены какие-нибудь нелицеприятные сообщения, значит, сетевые протоколы
у вас не установлены, а потому нужно выполнить следующие действия.
Вы, наверное, уже поняли, что ваша задача сейчас — добиться, чтобы
адрес 127.0.0.1 "пинговался". Для этого:
- Пользователям Windows 98/ME необходимо зайти в Панель
управления — Установка и удаление программ — Установка Windows
и добавить там Удаленный доступ к сети. При этом
автоматически установятся и все нужные протоколы.
- Пользователям Windows 95 придется чуть повозиться: открыть
Панель управления | Сеть и добавить там
Протокол TCP/IP (от Microsoft). Также, возможно,
потребуется добавить и Клиент для сети Microsoft. Затем
не забудьте все в том же окне выбрать из выпадающего списка
Способ входа в сеть значение "Обычный вход в Windows".
После перезагрузки повторите команду ping. Если адрес
по-прежнему недоступен, значит, протоколы так и не установились, а потому
начинайте все сначала. Если же ping пошел — все отлично.
Установка дистрибутива
Теперь вам необходимо скачать дистрибутив, расположенный по адресу
http://www.denwer.ru/dis/Base.
Скачивайте самую последнюю версию.
Все дистрибутивы представляют собой архивы в формате
7-Zip. Формат был выбран потому, что он
дает наилучшую степень сжатия.
После того, как вы скачали дистрибутив, вам нужно его запустить.
Вначале архив будет распакован во временную директорию (нужно немного
подождать), а затем автоматически запустится инсталлятор.
Вы увидите следующее:
Вас спросят о том, в какой каталог вы хотели бы установить комплекс (по
умолчанию используется C:\WebServers, вам нужно лишь нажать
Enter, чтобы согласиться с этим выбором). В указанном каталоге
будут расположены абсолютно все компоненты системы, и вне его
никакие файлы в дальнейшем не создаются (исключая ярлыки на Рабочем
столе).
Замечание.
Настоятельно рекомендуется устанавливать
комплекс в каталог первого уровня — то есть, C:\WebServers, а
не, например, C:\My\WebServers. Дело в том, что инсталляторы
пакетов расширений ищут базовый комплект именно на первом уровне по всем
дискам. И, если не находят, заставляют вас ввести имя директории вручную.
Далее вам предложат ввести имя виртуального диска, который будет связан
с только что указанной директорией. Рекомендуем вам согласиться со
значением по умолчанию (Z:). Важно, что диска с этим именем
еще не должно содержаться в системе — чаще всего так и происходит
с диском Z:. Этот диск может создаваться:
при загрузке машины (естественно,
инсталлятор позаботится, чтобы это происходило автоматически), а при
остановке серверов его (диск) не отключать;
только по явной команде старта комплекса
(при щелчке по ярлыку запуска на Рабочем столе). И, соответственно,
отключать диск от системы — при остановке серверов.
Наконец, установка завершена. Сразу же щелкайте по созданному
инсталлятором ярлыку Start servers на Рабочем столе, а
затем, дождавшись, когда все консольные окна исчезнут, открывайте браузер
и набирайте в нем адрес: http://localhost. Выходить из Интернета при этом не обязательно.
Замечание.
Некоторые ОС имеют обыкновение при первом
запуске Internet Explorer вызывать Мастер подключения.
Если это произошло на вашей машине, нажмите кнопку Отмена т.к, вы уже настроили подключение самостоятельно.
Если тестовая страница все же не загрузится, проверьте:
- отключен ли у вас прокси-сервер в настройках браузера?
- запущен ли Денвер? Если да, нет ли ошибок при щелчке на пиктограмме
пера (справа внизу)?
- не запущен ли у вас какой-то другой Web-сервер, который мешает
Денверу (часто бывает в Windows XP)? Например, Microsoft IIS? Если да,
отключите его.
- если у вас Windows 95, проверьте, проделали ли вы действия по подготовке ОС к инсталляции комплекса.
Наконец, если ничего не помогает, загляните на форум и посмотрите детальное описание ошибки в
форум.
Денвер-2 прошел тестирование в следующих ОС:
- Windows 95/98/ME;
- Windows NT;
- Windows 2000/XP.
Работа с виртуальными хостами
Замечание.
Вниманию пользователей Windows NT, 2000 или
XP (и старше). Прежде, чем продолжить, убедитесь, что у вас запущена
служба DNS-клиент. Это можно сделать, открыв Панель управления |
Администрирование | Службы. В противном случае виртуальные хосты работать
не будут.
Если вы занимаетесь разработкой Web-сайтов, вам наверняка хотелось бы
обслуживать одним сервером сразу несколько хостов. Иными словами, введя в
браузере путь http://localhost, вы попадете на один сайт, а,
напечатав http://test.ru, — совсем на другой (но тоже на
локальной машине).
До недавнего времени задача добавления в систему нового виртуального
хоста была довольно-таки кропотливой и состояла из следующих этапов:
- создание дерева каталогов сайта. Обычно каждый сайт представлен
отдельной директорией в /home/ — так, сайт
localhost содержится в /home/localhost/.
Однако сайт и его директория документов — вещи разные, поэтому первую
обычно помещают по адресу /home/localhost/www/
(а директорию с CGI-скриптами — в /home/localhost/cgi/). Для
определенности далее будем полагать, что нужно создать хост с именем
test.ru;
- модификацию системного файла hosts, чтобы связать
test.ru с IP-адресом локальной машины —
127.0.0.1. Таким образом, все виртуальные хосты на
локальной машине имеют один и тот же IP-адрес (это позволительно и даже
желательно).
- правка файла конфигурации Apache httpd.conf. Именно в
этот момент и возникало большинство проблем: что-то забыли, что-то не
дописали, и т.д;
- Перезапуск сервера, чтобы изменения вступили в силу.
С появлением проекта Денвер ситуация упростилась. Теперь, чтобы
добавить новый хост, вам нужно проделать следующее:
- создать в папке /home директорию с именем, совпадающим
с именем виртуального хоста (в нашем случае test.ru).
Имя директории содержит точку. Эта директория будет хранить директории документов доменов третьего
уровня для test.ru. Например, имя
abc.test.ru связывается сервером с директорией
/home/test.ru/abc/, а имя abc.def.test.ru — с
/home/test.ru/abc.def/. Поддиректория
www соответствует адресам www.test.ru и просто
test.ru. В общем, дешево и сердито. На рисунке показано,
как может выглядеть директория /home. Не забудьте создать
папку www в директории виртуального хоста, ведь именно в
ней будут храниться его страницы и скрипты!
- перезапустить сервер, воспользовавшись, например, ярлыком
Restart servers на Рабочем столе.
Это все, что нужно сделать. Модификация файла
httpd.conf и файла hosts при этом не совершается.
Файл httpd.conf вообще не меняется никогда. Чуть
посложнее с файлом hosts: он модифицируется автоматически,
подстраиваясь под текущую конфигурацию каталогов в /home. При
этом используется весьма сложный алгоритм для распознавания, какие хосты
были внесены Денвером, а какие пользователь добавил самостоятельно,
вручную. То есть, автоматическое
изменение файла hosts еще не означает, что в нем пропадут все
комментарии и вы не сможете больше никогда редактировать его "руками". И,
конечно, при остановке комплекса по ярлыку Stop servers
файл hosts восстанавливается в то состояние, которое и должно быть.
Замечание.
Представьте, что комплекс запущен и пользователь
открыл hosts в Блокноте и добавил в него какой-нибудь хост.
Например, он назначил домену microsoft.ru тот же IP-адрес,
что имеет ya.ru. После останова серверов этот адрес не
удалится, а будет сохранен в исходном виде, в то время как все виртуальные
хосты "отключатся".
Все примеры, приведенные в этих шагах, можно просмотреть, используя Денвер. Для
этого нужно сделать следующее: