Лабы
Физика

Черчение

Лекции
Задачи
Установка и настройка

Предполагается, что к настоящему моменту вы успешно загрузили РНР и Apache. Следующий шаг - выбор способа установки. Для компьютеров, не использующих систему Windows, существует три варианта: двоичный файл CGI, статический модуль Apache и динамический модуль Apache. Скорее всего, вы не захотите строить РНР в виде двоичного файла CGI. Более того, построение РНР в виде серверного модуля имеет некоторые преимущества, поэтому я уделю внимание построению РНР в виде статического и динамического модуля. Главное различие между этими двумя вариантами заключается в том, что при любых изменениях в статическом модуле РНР придется заново компилировать и Apache, и РНР, а изменения в динамическом модуле РНР потребуют компиляции только РНР, без сервера.

На компьютерах с системой Windows РНР может устанавливаться в виде либо двоичного файла CGI, либо статического модуля Apache. На этот раз я опишу построение двоичного файла CGI, потому что пользователи Windows обычно используют вместо Apache другие web-серверы (например, Microsoft Internet Information Server или Microsoft Personal Web Server). CGI-версия легко интегрируется с этими серверами. Хотя описанный процесс установки относится к РНР/Apache, установка для перечисленных выше web-серверов выполняется практически так же.

Как говорилось ранее, РНР4 поддерживает разнообразные web-серверы, в том числе AOL Server, Netscape Enterprise Server, Microsoft IIS, Zeus и многие другие. Впрочем, я ограничусь описанием установки для сервера Apache. За подробными инструкциями о том, как установить РНР для других серверов, обращайтесь к документации РНР по адресу http://www.php.net/.

Системы, не входящие в семейство Windows

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

Выполните следующие команды:
gunzip apache_1.3.9.tar.gz

gunzip php-4.0.0.tar.gz

После завершения распаковки остаются файлы с расширением *.tar.

Извлеките файлы поставки из архивов:
tar -zxvf apache_1.3.x.tar

tar -zxvf php-4.0.x.tar

С этого момента начинается основной процесс установки.

Модуль Apache

Установка РНР в виде модуля Apache выполняется довольно просто. Ниже подробно описаны все необходимые действия:

Перейдите в каталог Apache:
cd apache_1.3.x

Настройте Apache. Выберите путь по своему усмотрению, но помните, что за ним не должна следовать косая черта:
./configure -prefix=[путь]

Перейдите в каталог РНР; настройте, соберите и установите поставку. Параметр -with-config-file-path задает каталог, в котором будет находиться файл конфигурации РНР. Обычно этот файл находится в каталоге /usr/local/lib, но вы можете выбрать другой каталог по своему усмотрению:
./configure -with-apache=../apache_1.3.x -with-config-file-path=[путь]

make

make install

Вернитесь в каталог Apache. Теперь вы можете изменить конфигурацию, собрать и установить Apache. Параметр -other-configuration-options относится к любым специальным параметрам конфигурации, которые вы хотели бы передать web-серверу Apache. Данная тема выходит за рамки книги. Полное описание параметров приведено в документации Apache:
./configure -activate-module=src/modules/php4/libphp4.a

-other-configuration-options

make

make install

На последнем этапе происходит редактирование файла Apache httpd.conf. Одни модификации относятся к Apache, другие необходимы для того, чтобы сценарии РНР распознавались и передавались web-серверу. Сначала найдите такую строку:
ServerName new.host.name

Приведите ее к следующему виду:

ServerName localhost

Затем найдите строки

#AddType application/x-httpd-php .php .php4

#AddType application/x-httpd-php-source .php .phps

Чтобы файлы с поддержкой РНР правильно работали на сервере, эти строки необходимо раскомментировать. Для этого достаточно удалить знак фунта (#) в начале каждой строки. Сохраните файл и поднимитесь в иерархии каталогов на один уровень вверх. Запустите сервер Apache следующей командой:

./bin/apachectl start

Voila! PHP и Apache готовы к работе. Для проверки сохраните приведенный ниже фрагмент в файле phpinfo.php в корневом каталоге документов Apache - каталоге htdocs, находящемся в установочном каталоге Apache:

<?

php info();

?>

Откройте файл в браузере на сервере. В окне появляется длинный перечень сведений о конфигурации РНР. Вы успешно установили РНР в виде модуля Apache.

Динамический модуль Apache

Динамические модули удобны тем, что они позволяют обновлять поставку РНР без перекомпиляции web-сервера. Apache рассматривает поддержку РНР как один

из своих многочисленных модулей вроде ModuleRewrite или ModuleSpelling. Этот вариант особенно хорош в ситуациях, когда в РНР позднее будет добавляться поддержка новых возможностей - например, шифрования. Все, что вам придется сделать - переконфигурировать/откомпилировать РНР с поддержкой шифрования, и вы сможете немедленно использовать новую возможность в web-приложениях. Процесс установки описан ниже:

Перейдите в каталог Apache:
cd apache_1.3.x

Настройте Apache. Выберите путь по своему усмотрению, но помните, что за ним не должна следовать косая черта. Параметр -other-configuration-options относится к любым специальным параметрам конфигурации, которые вы хотели бы передать web-серверу Apache. Данная тема выходит за рамки книги. Полное описание параметров приведено в документации Apache.
./configure -prefix=[путь] -enable-module=so -other-configuration-options

Соберите сервер Apache. После ввода команды make на экран выводится серия сообщений:
make

Установите сервер Apache. После ввода команды make install на экран выводится следующая серия сообщений. После успешного завершения установки на экране появляется соответствующее сообщение:
make install

Если предыдущие действия прошли без ошибок, можно переходить к редактированию файла httpd.conf. Этот файл находится в подкаталоге conf каталога, указанного на шаге 2. Откройте файл в текстовом редакторе и найдите строку
ServerName new.host.name

Приведите ее к следующему виду:

ServerName local host

Перейдите в тот каталог, где находится пакет РНР. Настройте, соберите и установите РНР. В параметрах указывается путь к каталогу, содержащему файл apxs, - подкаталогу bin каталога, путь к которому был указан на шаге 2:
./configure -with-apxs=[путь/k/apxs]

make

make install

Откройте файл Apache httpd.conf для очередной модификации. Для обеспечения правильного лексического анализа входящих запросов на файлы с поддержкой РНР расширение должно совпадать с одним из расширений, указанных в файле конфигурации сервера Apache, httpd.conf. Файл содержит параметры, которые могут изменяться по усмотрению администратора; некоторые из них имеют прямое отношение к РНР. Откройте файл httpd.conf в своем текстовом редакторе. В конце файла присутствуют две строки следующего вида:
#AddType application/x-httpd-php .php .php4

#AddType application/x-httpd-php-source .php .phps

Чтобы файлы с поддержкой РНР правильно работали на сервере, эти строки необходимо раскомментировать. Для этого следует удалить'знак фунта (#) в начале каждой строки.
Сохраните файл и перейдите на один уровень вверх в иерархии каталогов (командой cd). Запустите Apache следующей командой:
./bin/apachectl start

Voila! РНР и Apache готовы к работе.

Для проверки сохраните приведенный ниже фрагмент в файле phpinfo.php в корневом каталоге документов Apache - каталоге htdocs, находящемся в установочном каталоге Apache:

<?

php_info():

?>

Откройте файл в браузере на сервере. В окне появляется длинный перечень сведений о конфигурации РНР. Вы успешно установили РНР в виде динамического модуля Apache.

Установка в Windows 95/98/NT

Если вам когда-нибудь приходилось устанавливать новые приложения в операционной системе Windows, вероятно, это не вызывало у вас особых трудностей. Вы щелкаете на нескольких кнопках, отвечаете на несколько вопросов - и все готово. Так же обстоит дело и с установкой Apache и РНР на компьютерах с системой Windows.

Дважды щелкните на значке исполняемого файла Apache. Запускается процесс установки, и на экране появляется начальное окно программ мастера (wizard) установки. Внимательно прочитайте текст лицензионного соглашения и подтвердите его.
Мастер запрашивает каталог для установки и предлагает вариант по умолчанию (C:\Program Files\Apache Group\Apache). Возможно, вам захочется сократить его до C:\Apache - решайте сами.
Затем вам будет предложено указать имя, под которым программа будет находиться в меню Пуск (Start). Введите имя по своему усмотрению или подтвердите предложенный вариант.
Следующий вопрос относится к типу установки. Выберите вариант Typical (Стандартная установка). После того как решение будет принято, выполняется установка.
На следующем шаге редактируется файл httpd.conf, находящийся в подкаталоге conf каталога, указанного на шаге 2. Откройте файл в текстовом редакторе и найдите строку ServerAdmin yourname@yoursite.com
Замените yourname@yoursite.com правильными данными. Затем укажите правильное имя сервера (если его нет, воспользуйтесь именем localhost):

ServerName localhost

Запустите Apache и убедитесь в том, что все работает правильно. Конкретные действия зависят от того, в какой системе вы работаете.
Если вы используете Windows NT, выберите в меню Пуск (Start) команду Install Apache as Service (NT Only). Затем вызовите панель управления, откройте окно Службы (Services), выберите Apache и щелкните на кнопке Пуск (Start). Apache запускается и будет запускаться автоматически при каждой последующей загрузке системы.

Запустите браузер, установленный на сервере, и введите адрес http: /local host/. В окне открывается страница с сообщением о том, что установка была выполнена успешно.
Следующий этап - установка РНР. Перейдите в каталог, где находится пакет РНР, и распакуйте его в произвольный каталог.
Перейдите в каталог, в который были помещены распакованные файлы, и найдите в нем файл php.ini-dist. Переименуйте его в php.ini и переместите в каталог C:\Windows.
Вернитесь в каталог РНР и найдите два других файла, php4ts.dll и Mscvrt.dll. Поместите эти файлы в каталог C:\Windows\System\. Возможно, файл Mscvrt.dll уже существует - если вам будет предложено его перезаписать, не соглашайтесь.
Вернитесь к файлу Apache http.conf и откройте его в текстовом редакторе. Необходимо внести еще несколько изменений. Найдите строку
ScriptAlias /cgi-bin/ "C:/Apache/cgi-bin/"

Непосредственно под этой строкой введите следующую:

ScriptAlias /php4/ "C:/php4/"

Найдите секцию AddType. Вы увидите две закомментированные строки:

#AddType application/x-httpd-php3. phtml

#AddType application/x-httpd-php3-source .phps

Непосредственно под этими строками добавьте следующие:

AddType application/x-httpd-php .phtml .php

AddType application/x-httpd-php-source .phps

Прокрутите содержимое файла и найдите следующий закомментированный фрагмент:

#

# Action lets you define media types that will execute a script whenever

# a matching file is called. This eliminates the need for repeated URL

# pathnames for oft-used CGI file processors.

# Format: Action media/type /cgi-script/location

# Format: Action handler-name /cgi-script/location

#

Добавьте под этим фрагментом следующую строку:

Action application/x-httpd-php /php4/php.exe

РНР и Apache готовы к работе.
Для проверки сохраните приведенный ниже фрагмент в файле phpinfo.php в корневом каталоге документов Apache - каталоге htdocs. Он находится в том каталоге, который был указан на шаге 2:

<?

php_info();

?>

Хотя при успешном завершении действий, описанных выше, вы сможете использовать web-сервер и РНР для тестирования, это еще не значит, что ваш web-сервер будет доступен из World Wide Web. За информацией по этому вопросу обращайтесь на официальный сайт Apache (http://www.apache.org/). Более того, хотя описанная процедура позволяет работать с пакетом РНР, вероятно, вы захотите изменить конфигурацию РНР так, чтобы она лучше соответствовала вашим потребностям. Эта тема рассматривается в следующем разделе <Конфигурация РНР>.

Откройте файл в браузере на сервере - в окне появляется длинный перечень сведений о конфигурации РНР.

Электротехника