Установка PHP 4.3.4 под Windows
Перейдем к установке PHP. Скачать его дистрибутив можно с официального сайта PHP – http://www.php.net. Для удобства лучше выбрать автоматический инсталлятор, как и в случае с сервером. Самое первое окошко при такой установке PHP содержит приветствие и предупреждение о существовании авторских прав на этот продукт (рис. 1.9).
Рис. 1.9. Программа автоматической установки PHP
Далее нужно прочитать и согласиться (или не согласиться) с лицензией (рис. 1.10).
Рис. 1.10. Лицензионное соглашение
Затем выбираем тип установки: стандартный или для специалистов. Мы выберем стандартную установку (рис. 1.11).
Рис. 1.11. Тип установки
В следующем окне программа предложит выбрать директорию для установки PHP. Туда будут скопированы файлы библиотек, расширений, интерпретатор командной строки, модули и т.п. (рис. 1.12).
Рис. 1.12. Выбор папки, в которую будет установлен PHP
В следующем окошке предлагается ввести адрес SMTP-сервера, т.е. сервера отправки почтовых сообщений, и обратный адрес отправителя почты. Это окошко мы приводить не будем.
Далее предлагается выбрать из списка сервер, с которым будет работать PHP. Поскольку мы установили Apache, то выберем из списка именно его (рис. 1.13).
Рис. 1.13. Выбор сервера, на котором будет работать PHP
Следующее окошко начинает инсталляцию (рис. 1.14).
Рис. 1.14. Начало автоматической установки PHP
После копирования необходимых файлов мы получили следующее сообщение (см. рис. 1.15):
Рис. 1.15. Сообщение о невозможности автоматически настроить Apache для работы с PHP
Это значит, что нужно настраивать сервер Apache для работы с PHP вручную.
Сначала следует выбрать, как мы хотим установить PHP, поскольку он поставляется в двух видах: CGI-скрипт (php.exe) или набор SAPI-модулей (например, php4isapi.dll), используемых сервером. Последний вариант обладает новыми возможностями, однако из-за недостаточной проработанности может функционировать недостаточно надежно, особенно на платформах старше Windows 2000 (может появляться куча ошибок 500, могут возникать сбои в других серверных модулях, таких как ASP). Так что, если нужна абсолютная стабильность – надо выбирать установку PHP в виде CGI выполнимого приложения.
Если мы хотим установить PHP как серверный модуль, то в файле конфигурации сервера (httpd.conf) нужно написать:
LoadModule php4_module
c:/php/sapi/php4apache.dll
AddType application/x-httpd-php .php .phtml
AddModule mod_php4.c
Если мы устанавливаем PHP как cgi-программу, то в httpd.conf нужно написать:
ScriptAlias /php/ "c:/php/index.html"
AddType application/x-httpd-php .php .phtml
Action application/x-httpd-php "/php/php.exe"
В этом случае могут возникнуть проблемы с безопасностью. Рекомендуется исправить директорию, где лежит исполняемый файл интерпретатора (c:php), на что-нибудь менее очевидное (например, на c:abc_php). Мы советуем устанавливать PHP как серверный модуль.
Еще нужно отредактировать файл php.ini (в папке c:Windows), чтобы PHP «знал», где находится корневая директория сервера, где пользовательские директории, а где его собственные библиотеки расширений. За это в файле php.ini отвечают соответственно переменные doc_root, user_dir и extension_dir. Зададим их таким образом:
doc_root = "c:Program FilesApache
GroupApachehtdocs"
user_dir = "c:users"
extension_dir = "c:phpextensions"
Кроме того, можно выбрать расширения, которые будут загружаться при запуске PHP. В реализацию PHP под Windows изначально входит очень мало расширений. Чтобы загрузить расширение, нужно раскомментировать в php.ini соответствующую ему строчку 'extension=php_*.dll'. Например, чтобы загрузить расширение для работы с MSSQL, нужно раскомментировать строку 'extension=php_mssql.dll'. Некоторые расширения требуют дополнительных библиотек. Поэтому рекомендуется скопировать дополнительные библиотеки в системную директорию (из папки c:phpdlls). При первой установке следует настроить и протестировать PHP без расширений.
Для того чтобы настройки, выполненные в конфигурационных файлах сервера и PHP вступили в силу, нужно перезапустить сервер.
Проверим, работает ли PHP. Для этого создадим тестовый файл (1.php) в директории пользователя (c:usersnina) со следующим содержанием:
<?php
echo"<h1>Привет всем!</h1>";
?>
Запустим этот файл через браузер, набрав http://localhost/~nina/1.php. Если что-то не так, то на экран будет выведен текст этого файла. Если все хорошо, то наш скрипт должен обработаться сервером и вывести большими буквами строку «Привет всем!».
Установка PHP под Linux
Как и в случае с Windows, для Linux существует два способа установки PHP: используя пакеты и непосредственно компилируя исходный код PHP, который можно скачать с http://www.php.net. Мы остановимся на первом варианте и рассмотрим установку PHP+Apache на примере дистрибутива AltMaster2.2 (http://altlinux.ru).
Для того чтобы установить apache, необходимо выбрать одноименный пакет. Это можно сделать, например, с помощью менеджера пакетов Synaptic. Воспользовавшись меню «Пакет -> Установить» (рис. 1.16) нужно выбрать интересующие пакеты. После этого необходимо перейти к установке выбранных пакетов с помощью меню «Действия -> Выполнить». После установки Apache имеет смысл перезагрузиться или выполнить следующую команду:
/etc/init.d/httpd start
# /etc/init.d/httpd start
Starting httpd:
[ OK ]
Это приведет к запуску сервера и можно будет увидеть по адресу http://localhost почти такую же страницу, как и при установке Apache под Windows. Возможным отличием будет присутствие логотипа AltLinux.
Рис. 1.16. Выбор пакета для установки Apache под Linux
После установки Apache можно приступить к установке непосредственно PHP. Опять же можно использовать PHP с помощью CGI и через модуль Apache. В первом случае достаточно пакета php и необходимых для его установки пакетов. Во втором случае необходимо дополнительно установить пакет mod_php. (рис. 1.17).
Рис. 1.17. Выбор пакетов для установки PHP под Linux
Менеджер пакетов Synaptic – это оболочка к программе apt-get, более подробно о ней можно узнать с помощью команды man apt-get. Воспользуемся утилитой apt-get для установки пакета mod_php. Команда apt-get build-dep mod_php установит пакеты, которые нам необходимы для инсталляции mod_php. Команда apt-get install mod_php завершит установку:
Как видно из приведенного листинга, скрипт установки самостоятельно перезагрузил сервер Apache. Также он самостоятельно внес изменения в конфигурационный файл Apache, полный путь до которого: /etc/httpd/conf/httpd.conf
В httpd.conf добавлена строка:
Include conf/addon-modules/mod_php4.conf
Содержимое файла mod_php4.conf
LoadModule php4_module
usr/lib/apache/libphp4.so
AddModule mod_php4.c
AddType application/x-httpd-php
.php .php4 .php3 .phtml
AddType application/x-httpd-php-source .phps
AddHandler application/x-httpd-php
.php .php4 .php3 .phtml
Как видно, изменения в httpd.conf подобны изменениям, которые мы вносили при установке под Windows.
Теперь можно воспользоваться тестовым файлом для проверки работоспособности PHP+Apache. Создадим test.php со следующим содержанием:
<?php
echo"<h1>Привет всем!</h1>";
?>
Корень сервера находится /var/www/html/. Можно создать каталог test и разместить там файл test.php. Вызвав этот файл из браузера по его адресу (http://localhost/test/test.php), получим страничку с текстом «Привет всем».
В заключение отметим, что процесс установки PHP с помощью пакетов в других дистрибутивах Linux принципиально не отличается от рассмотренного нами. Процесс установки из исходного кода в них же подробно описан. Стоит отметить, что «ручная» компоновка позволит настроить PHP под конкретные нужды, также возможен выигрыш в производительности.
Дистрибутив Денвер
Мы достаточно подробно рассмотрели установку и настройку PHP для платформ Linux и Windows. Для тех, кто не желает вникать в устройство PHP и требуемых для его работы компонентов, существуют готовые дистрибутивы, содержащие все наиболее распространенные расширения PHP. Один из самых известных – дистрибутив Денвер (http://dklab.ru/chicken/web/). Инструкции по его установке можно прочитать на сайте разработчиков. Отметим только, что его установка достаточно проста и не требует особых навыков. Этот дистрибутив можно рекомендовать для начинающих программистов, желающих научиться работать с PHP. Для более серьезных задач лучше все же установить и настроить PHP самостоятельно.