Установка и настройка Apache+PHP
Прежде, чем приступить к изучению PHP, неплохо бы его установить. И, конечно же, понадобится веб-сервер - остановимся на Apache 1.3 как на самом популярном и стабильном в связке с PHP. Если вы решили использовать Apache 2, настоятельно рекомендуется собирать его с prefork MPM - см. документацию.
Также (это касается пользователей Windows) не стоит соблазняться удобством установки готовых комплектов, типа "Денвер-2": все, конечно, "заработает само", но при необходимости изменить файлы конфигурации - а это вам обязательно понадобится - отсутствие опыта самостоятельной установки вам совсем не поможет. Как вариант - можете установить Apache+PHP вручную, разобраться, как все настраивать, ну а потом деинсталлировать плоды своих трудов и установить тот же "Денвер", если он вам так нравится. :) Мы рассмотрим установку Apache+PHP в ОС Windows (рассматривая только "настоящие" ОС - NT/2000/XP/2003) и Unix (в частности, Linux и FreeBSD). Apache+PHP... "А как же MySQL?" - спросит продвинутый пользователь... А MySQL мы установим попозже - пока он нам не нужен.
I. Установка ApacheI-1. Установка Apache в ОС семейства Windows
I-2. Установка Apache в ОС семейства UnixКлассически, в Unix программное обеспечение устанавливается путем сборки из исходников:
На этапе configure, вероятно, вы увидите ошибки, связанные с отсутствием в системе необходимых библиотек. Их необходимо скачать и установить в соответствии с инструкциями, находящимися в файлах INSTALL дистрибутивов (обычно - это та же последовательность ./configure && make && make install). Это дело довольно долгое и занудное, посему уже давно большинство Unix-систем включают в себя то или иное более удобное средство установки программного обеспечения. FreeBSDFreeBSD включает специальное средство для установки программного обеспечения - порты (ports), представляющие собой набор скриптов, автоматически скачивающих, настраивающих, компилирующих и устанавливающих программные продукты, включая необходимые для запуска библиотеки (dependences - зависимости). Я здесь не буду расписывать подробно, как в FreeBSD работать с портами - это описано в FreeBSD Handbook и множестве книг. Предположим, что в вашей системе библиотека портов установлена и обновлена.
Собственно, вот и всё. ;) При необходимости тонкой настройки изучите Makefile и добавьте необходимые параметры после команды make install (например, make install WITH_APACHE_SUEXEC=yes - для поддержки suexec).
Red Hat Linux и другие RPM-based дистрибутивы (ASP, Mandrake...)Red Hat Linux включает менеджер пакетов RPM. Подход к установке из RPM принципиально другой - .rpm-пакеты содержат уже скомпилированные бинарники. Это дает выигрыш во времени (компилировать ничего не нужно), однако, лишает возможности собрать программу так, как вы хотите. Для установки Apache из rpm необходимо загрузить .rpm-файл Apache 1.3 (откуда - ищите сами гуглем: Apache Software Foundation (apache.org) не распространяет RPM-ки) и запустите: rpm -Uvh apache* Gentoo LinuxGentoo Linux - являющийся по сути своей "BSD-style Linux" - содержит portages - систему портов, похожую на используемую в FreeBSD. Установка производится с помощью команды emerge, например: $ cd /usr/portage/net-www/apache Не запускайте просто emerge apache - это приведет к установке Apache 2.
Для автоматического запуска Apache при загрузке, введите # rc-update add apache default Другие дистрибутивы LinuxДругие дистрибутивы Linux (Debian, Slackware, ...) содержат собственные менеджеры пакетов - обратитесь к документации. В любом случае (даже в случае другой Unix OS) вы можете скомпилировать и установить Apache вручную - как описано выше. II. Установка PHPII-1. Установка PHP в ОС семейства WindowsСкачайте со страницы www.php.net/downloads.php ZIP-архив Windows Binaries (PHP 4.x.x Zip package). Не качайте "PHP 4.x.x installer" - там отсутствуют многие необходимые файлы!
Распакуйте архив в C:\PHP (или в любое другое место - но в дальнейшем будет предполагаться, что вы выбрали именно C:\PHP). Скопируйте файл php4ts.dll в каталог C:\WINDOWS\SYSTEM32 (или соответствующий). Скопируйте файл php.ini-dist в каталог C:\WINDOWS и переименуйте его в php.ini. II-2. Установка PHP в ОС семейства UnixПроцесс установки PHP аналогичен установке Apache, за исключением того, что при сборке PHP вам понадобится указать гораздо больше конфигурационных опций. При ручной сборке из исходников - для этого необходимо скачать и распаковать исходный код с www.php.net/downloads.php - сначала запустите ./configure -help и изучите список параметров сборки (весьма внушительный). В любом случае, понадобится параметр -with-apxs=/путь/к/apxs - это необходимо для сборки модуля Апача mod_php. Например, если Apache установлен в /usr/local, то параметр будет выглядеть следующим образом: -with-apxs=/usr/local/sbin/apxs. После конфигурирования, запустите make, и make install. Чем больше вы используете опций, подключающих различные расширения, тем больше понадобится вручную скачивать и устанавливать необходимые библиотеки. Лучше, конечно, воспользоваться менеджером пакетов или портов вашей ОС. Независимо от выбранного способа, после успешной установки, скопируйте php.ini-dist в php.ini: FreeBSDPHP удобно устанавливать из портов FreeBSD. Воспользовавшись командой su для получения прав суперпользователя, перейдем в каталог /usr/ports/lang/php4. Есть два варианта сборки PHP из портов - интерактивный и с помощью параметров команды make. В первом случае, просто запустим команду make install. После того, как make скачает и распакует дистрибутив php, на экране появится окно со списком возможных опций конфигурирования - просто поставьте "крестики" против нужных. У интерактивного способа, при всем его удобстве, есть недостаток - выбранные однажды параметры нельзя сохранить для использования той же конфигурации повторно. Можно указать все нужные параметры в командной строке, например make install WITH_MYSQL=YES WITH_GD=YES. Список возможных опций находится в файле /usr/ports/lang/php4/scripts/php4_options (этим файлом, кстати, и пользуется скрипт, выводящий окно в интерактивном режиме). Update: недавно (видимо, с большого похмела) мейнтенер порта PHP решил все переделать. И не только решил (увы). Теперь сборка PHP со статической линковкой расширений (т.е. компиляция PHP и выбранных расширений в один so-файл) из портов невозможна. Либо ручками, либо - если динамические (shared) расширения устраивают - cd /usr/ports/lang/php4, make install, cd /usr/ports/lang/php4_extensions, make install. Для php5 - аналогично. Соответствующие строки extension=.. в php.ini пропишутся автоматически. Впрочем, при использовании PHP как Apache-модуля, динамические расширения ничуть не медленнее статических, так что не стоит особо расстраиваться по этому поводу. :)
Red Hat Linux и другие RPM-based дистрибутивы (ASP, Mandrake...)Поскольку, как уже говорилось, Red Hat-пакеты содержат уже скомпилированные бинарники, вам следует отыскать в интернете готовый rpm с наиболее подходящей вам конфигурацией, и установить его, воспользовавшись командой rpm. Gentoo LinuxGentoo-portage PHP (модуля Apache) находится в /usr/potrage/dev-php/mod_php. Для указания параметров configure используйте переменную USE (неполный список возможных значений USE в Gentoo Linux: www.gentoo.org/dyn/use-index.xml). Можно отредактировать etc/make.conf, но удобнее так: После установки, файл php.ini (а точнее - симлинк на него) находится в /etc/apache/conf. III. Настройка Apache+PHPЕсли это еще не сделала программа установки из пакетов/портов, добавьте в файл конфигурации Apache httpd.conf следующие строки:
Подключение расширенийВ Windows, для подключения расширений следует раскомментировать соответствующие строки extension=... в php.ini, не забыв прописать путь к ним в строке extension_dir=.. (обычно они находятся в c:\php\extensions для php4 и в c:\php\ext для php5). В Unix (если только вы не указывали атрибут shared параметров -with... при сборке), расширения подключаются путем пересборки php. Настройки php.iniЕсли вы попали на эту статью не случайно (с гугля, сообразив, что для скачанного форума или чата нужен веб-сервер), а собираетесь изучать PHP - установите значения указанных переменных именно так. И не спорьте. :) Что, зачем и почему - я объясню позже. register_globals = off Запуск ApacheТеперь все готово к запуску Apache. В Windows: IV. Установка PHP5Apache+PHP5 устанавливается точно так же, как и Apache+PHP4 - просто везде замените в этой инструкции PHP4 на PHP5 (в т.ч и в именах файлов и конфигурационных директивах). В частности, для Windows/Apache/PHP5, в httpd.conf необходимо прописать:
LoadModule php5_module C:/php5/php5apache.dll AddModule mod_php5.c AddType application/x-httpd-php .php
Страница сайта http://silicontaiga.ru
Оригинал находится по адресу http://silicontaiga.ru/home.asp?artId=6169 |