Установка PHP

Чтобы веб-сервер стал выполнять PHP скрипты, а не выдавать их содержимое в браузер, на сервер необходимо установить интерпретатор PHP.

PHP надо скачать с сайта http://php.net/downloads.php. Версии для Windows скачиваются с отдельного сайта, причём для установки с сервером Apache надо выбрать версию "VC6 x86 Thread Safe".

В случае с Linux, скачивать PHP не надо, так как все популярные дистрибутивы включают PHP в стандартный набор пакетов.
 

В ходе установки в Windows, PHP задаст вопрос о сервере, в котором надо сконфигурировать PHP. В случае с Apache, надо выбрать вариант "Apache X.X Module" (обычно, первый в списке). Далее надо указать директорию с конфигурацией Apache (например, C:\Program Files\Apache Software Foundation\Apache2.2\conf).

На вопрос

При установке инсталлятор PHP добавит необходимые директивы в конфигурацию Apache, так что после установки уже сразу заработают PHP-скрипты. Но чтобы лучше понять, как именно PHP прописывается в конфигурацию апача, приведу небольшой отрывок из конфигурации, с директивами, которые отвечают за PHP:

# Подключаем модуль PHP
LoadModule php5_module c:\soft\php\php5apache2_2.dll

# Сообщаем Apache, что файлы с расширением .php и php5 являются PHP-скриптами.
# Интерпретатор PHP будет обрабатывать все файлы, чей сontent-type="application/x-httpd-php".
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php5

# Даём инструкцию Apache при обращении к директории (directory/)
# выдавать index.php, если он есть в этой директории.
<IfModule dir_module>
    DirectoryIndex index.html index.php5 index.php
</IfModule>

Не забудьте перезапустить веб-сервер Apache после установки PHP!

Когда модуль PHP установлен, надо убедиться, что он работает. Для этого надо создать простой файл test.php, и положить его, например, корневую директорию веб сервера. В test.php нужен такой код:

<?php phpinfo();

Теперь при заходе на страницу http://localhost/test.php, если PHP установлен правильно, вы увидите длинную страницу со полной информацией о текущей конфигурации PHP. Выглядеть это будет примерно так (на этой картинке лишь самая верхушка информационной страницы):

В графе Loaded Configuration File указан путь к файлу конфигурации PHP, из которого берутся настройки PHP. Но, как видим, его нет. Чтобы задать свои настройки для PHP, надо скопировать php.ini из папки PHP в C:\WINDOWS и перезапустить Apache. После этого в графе Loaded Configuration File появится путь к файлу php.ini. Здесь находится конфигурация самого PHP.

Теперь файл конфигурации PHP надо открыть и дописать в него кое-что, что нам пригодится в ходе работы.

Прямо в самом конце php.ini я обычно добавляю такие директивы:

; Это важные настройки, которые облегчат отладку программ.
error_reporting = E_ALL           ; Выводить все предупреждения и замечания (кроме E_STRICT)
display_errors = On               ; Показывать сообщения об ошибках на странице
display_startup_errors = On       ; Показывать ошибки при инициализации
error_log="g:\projects\php.log"   ; Выводить сообщения об ошибках в лог-файл

; Далее - включаем модули, которые могут пригодиться, но все их включать не обязательно.
; Просто, как показала практика, обычно именно они нужны чаще остальных.
; Полный список доступных стандартных модулей можно найти в php.ini.

extension=php_mbstring.dll        ; Этот модуль нужен для работы с UTF-8 и другими кодировками текста
extension=php_gd2.dll             ; Модуль для работы с изображениями
extension=php_curl.dll            ; Для работы с сетью
extension=php_openssl.dll         ; Работа по протоколу SSL
extension=php_mysql.dll           ; Модуль для работы с базами данных MySQL
extension=php_pdo.dll             ; Доступ к базам данных через интерфейс PDO
extension=php_pdo_mysql.dll       ; PDO для MySQL
extension=php_pdo_sqlite.dll      ; PDO для SQLite

Почему в конце php.ini? Во-первых, так чётко видно, какие директивы конфигурации изменены. Во-вторых, при переходе на другую версию PHP или при настройке PHP на другой машине, достаточно лишь скопировать небольшой кусок со своими настройками в новый php.ini, а не лазить по всему файлу, пытаясь вспомнить, что и где было изменено.

Директивы конфигурации PHP могут быть указаны в php.ini более одного раза, в силу вступает последнее указанное значение.

Темы:

Комментарии

На сайте РНР написано:
Do NOT use VC9 version with apache.org binaries

labaka's picture

Спасибо, исправил.

>>Прямо в самом конце php.ini я обычно добавляю такие директивы:
Замени в них # на ;