РНР 5 в подлиннике

Страница 65 из 554


Гпава 5. Установка РНР и MySQL

133

дополнительные DLL-библиотеки, необходимые РНР. Теперь все такие библиотеки располагаются в том же каталоге, что и ЕХЕ-файлы, и это сильно облегчает их поиск в момент запуска. Новая структура дистрибутива позволяет сразу же после распаковки запускать ЕХЕ-файлы РНР, не заботясь о добавлении пути поиска библиотек в переменную окружения path.

Заметьте, что вам, скорее всего, не понадобится подключать все дополнительные библиотеки. Достаточно ограничиться лишь теми из них, которые действительно необходимы.

Другие файлы

Для корректной работы РНР нуждается во множестве дополнительных файлов и библиотек. Все они находятся в дистрибутиве и не требуют специальной инсталляции.

□ DLL-библиотеки поддержки: ранее располагались в подкаталоге dlls, а сейчас перекочевали в основную папку дистрибутива, поближе к ЕХЕ-файлам. Данные библиотеки используются различными расширениями РНР. Например, libmysql.dll используется модулем расширения ext/php_mysql.dll (последний просто не удастся подключить без наличия первого).

□ DLL-модули для различных серверов: Apache 1.3, Apache 2, Microsoft IIS и т. д. Они позволяют запускать РНР в виде модуля сервера, а не в виде внешней CGI-программы. Для нас интерес представляет, конечно, только php5apache.dll.

□ Каталог PEAR и программа go-pear.bat, предназначенная для начальной инициализации библиотек PEAR (РНР Extension and Application Repository, репозиторий расширений и приложений на РНР).

□ Файл php5ts.dll — это и есть сам РНР, так сказать, "во плоти". Он оформлен в виде DLL-библиотеки, т. к. содержит львиную долю кода интерпретатора и используется тремя ЕХЕ-файлами, а также всеми модулями для различных серверов. У него и размер соответствующий — почти 4 Мбайт.

Конфигурирование РНР

Приступим к настройке параметров РНР.

шшшшшшт

Прежде чем проверять РНР на работающем Apache, всегда пробуйте запустить php.exe вручную. Если сообщения об ошибках не выдаются, значит, все сконфигурировано правильно. В противном случае следует исправить ошибку и повторить все сначала. Учтите, что запуск РНР через Apache может скрыть многие ошибки: он просто не будет работать, а выяснить, из-за чего именно, окажется весьма сложным.

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

1. Для начала определимся с каталогом, в который будем устанавливать РНР. Папка z:/usr/Iocal/php5 — достаточно хороший выбор ("поближе" к Apache).

2. Разархивируйте скачанный дистрибутив в этот каталог (так, чтобы файл php-cgi.exe имел полный путь z:/usr/locaI/php5/php-cgi.exe).

134

Часть II. Выбор и настройка инструментария

Переименуйте файл php.ini-dist в php.ini. Это основной конфигурационный файл РНР. Вам предстоит внести в него несколько изменений.

Найдите директиву error_reporting: error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT

Теперь измените ее значение так (снимите знак комментария, если нужно):

error_reporting = E_ALL

Данная директива указывает РНР, насколько подробным должен быть диагностический вывод при наличии ошибок или предупреждений. Сейчас мы установили в ней максимальное значение, что очень помогает при отладке скриптов.

Внимание!

Настоятельно рекомендуем придерживаться максимально подробного режима контроля ошибок. Для программ, которые на этот режим не рассчитаны, всегда можно его отключить персонально. Хотя поначалу постоянно выводящиеся при отладке предупреждения могут раздражать, со временем понимаешь, насколько же это мощный инструмент, и как сильно он экономит время.

5. Найдите директиву inciude_path, задающую путь к библиотекам РНР. Снимите с нее знак комментария (точка с запятой) и укажите следующее значение:

include_path = ".;/usr/local/php5/PEAR"

PEAJR — это набор разнообразных библиотек, написанных на РНР версий 4 и 5. Некоторые из этих библиотек входят в дистрибутив РНР.

(_Замечание ^

Обратите внимание, что в php.ini мы нигде не упоминаем дискИ:. Так как весь инструментарий установлен у нас именно на этом диске, его имя можно везде опускать— даже в настройках Apache.

6. Укажите при помощи директивы smtp адрес SMTP-сервера вашего провайдера. В РНР есть функция mailt) для отправки почты прямо из скриптов. В своей работе она использует значение именно этой директивы.

7. Найдите директиву session.save_path. Ее значение должно быть равно "/tmp" — это путь к временной папке, в которой РНР будет хранить файлы сессий (session files). Поскольку этого каталога у нас пока нет, рекомендуется его создать: Z:\tmp, а также в Проводнике установить для него атрибут Hidden (Скрытый), чтобы случайно не удалить.

Конфигурирование расширений

Как уже упоминалось, РНР поставляется в виде ядра и набора из нескольких десятков так называемых "внешних расширений" (DLL-библиотек), которые можно подключать и отключать. Этим процессом можно управлять при помощи описанных далее двух директив.

1. Найдите и исправьте директиву extension_dir, чтобы она выглядела так:

extension_dir = /usr/local/php5/ext




  Hostland.Ru

 «Бесплатный хостинг Hostland.Su» © 2006