Установка Web-сервера Apache в связке с PHP 5 и MySQL (Apache+PHP+MySQL)В этой статье мы рассмотрим установку и настройку Web-сервера Apache, PHP 5 и СУБД MySQL для использования их на локальной машине под операционной системой Windows (2000 и XP). Использование локальных серверов может понадобится по многим причинам – вам необходимо изучить PHP или MySQL, а тестирование своих Web-приложений на хостинге либо дорого обходится, либо такой возможности вообще нет. В этом случае вам понадобится связка Apache+PHP+MySQL на локальной машине. Для начала необходимо раздобыть дистрибутивы серверов Apache и MySQL, а так же архив PHP. Мы будем устанавливать и настраивать Apache 2, MySQL 4 и PHP 5. Так же можете скачать с нашего сайта файлы
php.ini для
настройки PHP и httpd.conf для Apache. Однако, делайте это только в
крайнем случае — если у Вас ничего не получилось с "родными"
файлами,
которые появилиcь при установке приложений. Но в любом случае, их
необходимо будет настроить под конкретную машину. Скачать Скачать Apache можно с зеркал приведённых на
официальном
сайте http://www.apache.org/dyn/closer.cgi.
При поиске следует помнить, что Apache так же может называться
httpd, по
имени его демона в UNIX. На зеркалах обычно много различных
файлов,
например: ЗамечаниеБинарные коды дистрибутивов Apache распространяются в нескольких вариантах, как с расширением *.exe, так и *.msi и имеют название вида httpd_версия_win32_*_.msi. Чтобы вам не мучатся, вот ресурс где можно его
взять: http://apache.rin.ru/dist/httpd/binaries/win32/ PHP 5 можно обнаружить на зеркалах http://www.php.net/downloads.php.
На сайте PHP доступен в двух формах: исходных кодах (Complete
Source Code)
и предкомпилированном варианте (Windows Binaries). Нас будет
интересовать
предкомпилированная версия, которая так же распространяется в двух
вариантах: в виде установщика (php-5.0.0-installer.exe) и виде
zip-архива
(php-5.0.0-Win32.zip). Установщик удобен в установке, но содержит
лишь
ограниченную версию PHP (для сравнения инсталлятор занимает 2 Мб, а
zip-архив 7 Мб). Кроме того, использование автоматического
инсталлятора не
избавляет от необходимости настройки конфигурационного файла
сервера
Apache. Поэтому рекомендуется всё же загрузить zip-архив. Дистрибутив MySQL можно загрузить со страницы http://dev.mysql.com/downloads/. Мало кто знает, что полное справочное руководство на русском языке можно найти на официальном сайте MySQL по адресу http://dev.mysql.com/doc/mysql/ru/index.html. После того как мы запаслись всеми необходимыми дистрибутивами можно приступать к установке. Порядок установки Apache, PHP и MySQL не имеет значения. Начнём с Web-сервера Apache. Установка Web-сервера ApacheЗапустите установщик Web-сервера Apache. Результатом будет окно с лицензионным соглашением, после принятия которого, следует перейти к следующему окну с краткой информацией о нововведениях во второй версии Apache. Следующее окно, показанное на рисунке, позволяет ввести информацию о сервере: доменное имя сервера, имя сервера и адрес электронной почты администратора. Если установка происходит на локальную машину, то в поля для доменного имени и имени сервера следует ввести localhost (см. рисунок.). В нижней части окна предлагается выбрать номер порта по которому сервер будет принимать запросы (80 или 8080). ![]() localhost - это имя для использования сервера на локальной машине, которое связано с IP-адресом 127.0.0.1, который зарезервирован для локального использования. После этого будет предложен способ установки:
стандартный
(Typical ) или выборочный (Custom), позволяющий
выбрать
компоненты сервера вручную. Следующее окно позволяет выбрать
каталог
установки сервера, по умолчанию это После успешной инсталляции при наборе в окне браузера http://localhost/ или http://127.0.0.1/ - должна загрузится страница сервера. Теперь необходимо научиться управлять Apache, а
именно
научится запускать, останавливать и перезапускать сервер.
Существует много
способов осуществить эти операции: при помощи утилиты
ApacheMonitor,
используя консоль управления сервисов Windows, используя пункты
меню Пуск,
из командной строки… Мы рассмотрим консоль управления сервисов
Windows,
позволяющего настроить Apache для автоматического старта при
запуске
системы. Для запуска консоли управления выполните команду
![]() Службы Windows позволяют осуществлять запуск фоновых приложений при старте системы. Для этого необходимо перейти в окно Свойства, выбрав в контекстном меню сервиса пункт Свойства и в появившемся окне в выпадающем списке "Тип запуска" выбрать пункт "Авто". Теперь можно приступить к настройке конфигурационного файла Web-сервера Apache — http.conf, расположенного в папке C:/www/Apach2/conf. Следует помнить, что изменения произведённые в этом файле вступают в силу только после перезапуска сервера. Сервер Apache по умолчанию настроен на ISO-ную кодировку. Т.е. сервер будет считать, что все ваши файлы (html-странички, php-скрипты) написаны в этой кодировке. Чтобы изменить кодировку на кодировку Windows необходимо открыть http.conf на редактирование, найти строку
и заменить её на
После этого, нам понадобится создать так называемы виртуальный хост — т.е. папку после размещения в которой файлов с расширением .html и .php они становятся доступными по адресу http:/localhost/index.html. Для этого следует выбрать папку, которой вы готовы для этого пожертвовать. Пусть это будет С:/www/scripts. Директивы виртуальных хостовДирективы, ответственные за виртуальные хосты, обычно располагаются в конце конфигурационного файла http.conf и выглядят примерно следующим образом:
Теперь создайте в "C:/www/scripts" простейший скрипт index.html, разместив в нём любую фразу и перезапустите сервер. Набрав в браузере http:/localhost/ вы увидите в окне браузера фразу помещённую в index.html. Если это получилось, то Web-сервер Apache работает. Настройка PHPСервер Apache настроен — теперь можно приступать к настройке PHP. Для этого создайте директорию С:/PHP и разархивируйте туда содержимое архива php-5.0.0-Win32.zip. После этого следует переименовать конфигурационный файл php.ini-dist в php.ini и скопировать его в директорию с С:/Windows. ЗамечаниеИзменения производимые в конфигурационном файле php.ini вступают в силу после перезагрузки сервера Apache. Так как на локальной машине вы, скорее всего, будете заняты тестированием Ваших Web-приложений, то необходимо должным образом настроить конфигурационный файл php.ini. Найдите директиву error_reporting и установите для неё следующее значение:
Это значение настроит PHP таким образом, что при работе PHP-скриптов будут отображаться все ошибки, а "замечания" будут игнорироваться. Так же обходимо проследить, чтобы директива display_errors, была включена:
Если данная директива отключена (Off), то
сообщения об
ошибках не будут выводится в окно браузера и в случае
возникновения в коде
ошибки вы будете гадать перед девственно белым окном — что бы это
означало.
Буквы здесь означают следующее: Следующая директива, которая может потребовать настройки – это register_globals. Если данная директива включена
то переменные передаваемые метором GET, POST,
через
cookies и сессии можно использовать в PHP-скрипте, обращаясь к ним
просто
как обычным переменным $someone.
то к таким переменным можно будет обращаться
только при
помощи суперглобальных массивов ($_POST, $_GET и т.п.).
После того как php.ini настроен Web-серверу Apache необходимо сообщить о наличии в системе PHP. Для этого в конфигурационном файле http.conf разместите следующие строки:
Первая строка сообщает серверу Apache, о том,
что файлы с
расширениями php и phtml - должны интерпретироваться как PHP
скрипты.
ПримечаниеЧтобы избежать неожиданных проблем пути в
настроечных
файлах (httpd.conf и php.ini) рекомедуем писать через слеш в
UNIX-овом
формате "/". Теперь необходимо настроить индексный файл. Если в окне браузера набрать строку http://localhost/, а не http://localhost/index.html. Сервер всё равно предоставит браузеру index.html, так как этот файл является индексным и ищется в директории первую очередь, если не указан конкретный файл. Теперь необходимо настроить http.conf, таким образом, чтобы Web-сервер Apache так же реагировал на файлы index.php. Для этого найдте в http.conf директиву DirectoryIndex и исправьте её следующим образом:
После этого необходимо перегрузить сервер Apache, а в корневой директории виртуального хоста ("C:/www/scripts") создать пробный файл PHP (index.php):
В случае успешной настройки, обращение по
адресу
http://localhost/index.php отобразит фиолетовую таблицу с текущими
настройками PHP, которая выдаётся функцией phpinfo(). Подключение MySQLПо умолчанию PHP настроен таким образом, что поддержка MySQL в нём отключена, для того чтобы включить поддержку MySQL следует опять обратится к конфигурационному файлу php.ini. Найдите и раскомментируйте строку
При этом директива extension_dir должна указывать путь, в котором должна находится динамическая библиотека расширения. Например вот так:
Вы можете оставить эту директиву без изменений
но в этом случае необходимо скопировать библиотеку php_mysql.dll из директории C:/PHP/ext в С:/PHP/. Перезапустите сервер Apache и в файле "C:/www/scripts/index.php" поместите следующий код:
В случае успешной интеграции MySQL в связку Apache и PHP, обращение по адресу http://localhost/index.php выведет в окно браузера версию сервера MySQL. ПримечаниеЕсли вы хотите прописать путь к библиотеке -
будьте
внимательны: PHP плохо реагирует на прямые слеши в стиле Windows
\,
следует использовать обратные /. Например, extension_dir =
"C:/php/ext". Установка расширений PHPНа последок вам возможно понадобится настроить некоторые расширения PHP, они настраиваются точно так же как и MySQL. Так для того, чтобы подключить графическую библиотеку GDLib в php.ini необходимо раскомментировать строку:
Проверьте после этого наличие данной библиотеки в папке c:phpext. После внесения изменений в php.ini перезапустите сервер. Что бы быстро проверить: подключилась ли библиотека — выполните функцию phpinfo(). Если все в порядке, то в таблице, которая отображается функций phpinfo(), должен появится раздел "gd". Скачать GDLib2 Некоторые расширения требуют дополнительных библиотек. Так для того чтобы воспользоваться расширением PHP "Mcrypt Encryption", позволяющем осуществлять симметричное шифрование необходимо, во первых, расскомментирования строку в php.ini
А во вторых скопировать в папку С:/WINDOWS/ дополнительную библиотеку libmcrypt.dll Любые возникающие по установке связки Apache+PHP+MySQL вопросы вы можете задать на нашем форуме http://www.softtime.ru/forum/. |