1.5. Требования к аппаратному и программному обеспечению
Одним из основных преимуществ программного обеспечения Open Source является то, что оно обеспечивает возможность адаптации к новым средам. Это справедливо и в отношении языка PHP. Несмотря на то что первоначально PHP задумывался как модуль, работающий с Web-сервером Apache, с тех пор он абстрагировал свой интерфейс с Web-сервером. Новый уровень абстрагирования был достигнут благодаря созданию модуля ISAPI, который позволил также хорошо работать с созданным компанией Microsoft Web-сервером Internet Information Server (IIS). Что касается требований к оборудованию, то могу сказать, что я собственными глазами видел, как PHP работает на машинах с процессором Pentium 100 МГц под управлением ОС Slackware Linux или Windows NT. Их производительности вполне хватало для работы в качестве персональной среды разработки. Кроме того, не последнюю роль играет тот факт, что движки для PHP 3 и 4 были разработаны на процессорах Intel 486. Конечно же, узел, который будет принимать тысячи запросов в день, нуждается в более мощной аппаратной поддержке. При сравнении узлов, работающих под управлением PHP, и простых HTML-узлов требования к аппаратуре не слишком различаются. Но, несмотря на этот пример, разработчики никоим образом не ограничены процессорами Intel. Интерпретатор PHP также хорошо работает на Power PC, Sparc и других 32-разрядных или еще более мощных процессорах.
При выборе операционной системы перед вами стоит выбор в основном между Windows и Unix. Интерпретатор PHP будет работать на достаточно старых версиях Windows, хотя эти операционные системы не совсем подходят для выполнения роли Web-серверов, характеризующихся большим трафиком. Он также будет работать под управлением Windows 2000 и Windows XP. Для операционных систем Unix PHP работает хорошо как для ОС Linux и Solaris, так и для всех остальных клонов. Выбирая операционную систему, опирающуюся на такие технологии PPC, как Macintosh, можно выбрать LinuxPPC, которая является версией Linux. Чад Каннингэм (Chad Cunningham) сделал доработку ОС X, предназначенную для компьютеров Apple, позволяющую компилировать PHP в этой операционной системе. Существует даже поддержка PHP в IBM OS/2 и Novell Netware.
Язык PHP по-прежнему лучше всего работает с Web-сервером Apache. Но сейчас он также хорошо работает и с Web-сервером IIS. Он также компилируется как модуль Web-сервера fhttpd. Интерпретатор PHP можно заставить работать практически с любым Web-сервером, использующим CGI-версию. Однако я не рекомендую использовать такую конфигурацию для рабочих Web-узлов.
Установка Web-сервера Apache для ОС Unix
Для инсталляции Web-сервера Apache и PHP под управлением ОС Linux совсем нетрудно найти RPM-инсталляцию, но такая установка может не включать все необходимые возможности PHP. Такую инсталляцию можно порекомендовать в качестве первоначального шага. Позднее всегда можно усовершенствовать инсталляцию компилированием Web-сервера Apache и PHP из исходных текстов. PHP отлично компилируется на большинстве версий Unix-подобных операционных систем. Но если нет опыта компиляции программного обеспечения, полученного из Internet, эта задача будет трудновыполнимой. При отсутствии опыта разархивирования файлов из архивов, созданных с помощью архиватора tar, или выполнения утилиты make можно попробовать обратиться к системному администратору или к кому-то более опытному. Для полной установки PHP необходимы привилегии пользователя root.
Первый шаг заключается в загрузке tar-файлов и их распаковке. Загрузите самые последние версии PHP и Apache с Web-узла PHP (<http://www.php.net/ downloads.php>) и Web-узла Apache (<http://httpd.apache.org/>). На момент написания этих строк устойчивой считается версия Apache 2. Поддержки модуля mod_php в Apache недостаточно. Следующие рекомендации требуют незначительных изменений для Web-серверов Apache 1.3 и Apache 2.
После распаковки tar-файла следует настроить Web-сервер Apache, запустив сценарий настройки, расположенный в каталоге Apache. В листинге 1.1 показана минимальная конфигурация Web-сервера Apache.

Листинг 1.1. Настройка Web-сервера Apache
./configure
--server-uid=nobody --enable-module=so