Инсталляция (установка) Apache 2.2.15, php 5.3.2, MySQL 5.1.46 под Windows

Этапы инсталляции
1. Получение дистрибутивов

Дистрибутивы Apache, php и MySQL можно скачать с сайтов с сайтов www.apache.org, www.php.net, www.mysql.com.

php

На 1 мая 2010 г. последней надёжной (stable) версией для Windows была версия 5.3.2. Рекомендую выбрать дистрибутив php не в виде инсталлятора, а в виде архива (13М). 1 мая 2010 года этот архив был доступен по адресу:
http://windows.php.net/downloads/releases/php-5.3.2-Win32-VC6-x86.zip.
Далее предполагается, что Вы последовали моему совету и выбрали дистрибутив в виде ZIP-архива.
Apache

1 мая 2010 г. дистрибутив рекомендуемой (и последней!) версии (2.2.15) был доступен по адресу
http://apache.infocom.ua/httpd/binaries/win32/httpd-2.2.15-win32-x86-no_ssl.msi. Размер дистрибутива – 5,1 М
MySQL

1 мая 2010 г. оглавление дистрибутивов последней стабильной версии (5.1.46) находились по адресу
http://www.mysql.com/downloads/mysql/
2. Установка Apache

Запускаем дистрибутив. Надо будет указать, что согласен с условиями лицензии, и ввести синтаксически корректные домен, url и email — они будут возвращаться пользователю при ошибке.
Критерий успешной установки: При вызове броузером адреса http://localhost/ Вы увидите надпись «It works!»
Если Вы не видите надпись «It works!»
Проверьте — не заблокирован ли Apache Вашим брандмауэром
Проверьте — установилась ли служба Apache2.2. Выяснить это можно, зайдя в Панель Управления Windows — в разделе Администрирование/Службы (Administrative Tools/Services). Если службы Apache2.2 там нет, попробуйте инсталлировать её из командной строки, установив активной директорию Apache2.2\bin и выполнив две команды:
httpd -k install
httpd -k start
Если запущен MS IIS — он вцепится мёртвой хваткой в порт 80 и никому его не отдаст. Апачу придётся уходить на порт, например, 8080. И тогда придётся править директиву Listen файла httpd.conf (примерно 46-я строка), и после перезагрузки Апача обращаться к ссылке http://localhost:8080/
В Windows Vista зачастую Apache запускается и останавливается только через консоль Службы
Если при попытке запустить Apache выдаётся сообщение:
httpd.exe: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1 for ServerName
(OS 10048)+сvўэю ЁрчЁх°рхЄё юфэю шёяюы№чютрэшх рфЁхёр ёюъхЄр (яЁюЄюъюы/ёхЄхтющрфЁхё/яюЁЄ). :
make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down
Unable to open logs
Note the errors or messages above, and press the key to exit. 30…
попробуйте поставить директиву Win32DisableAcceptEx в файл httpd.conf (спасибо за эту информацию странице
http://www.php.com.ua/forum/viewtopic.php?f=3&t=9403&p=62365)
3. Распаковка архива php в c:\php

Именно на это расположение ориентированы строки в конфигурационных файлах php. Если Вы первый раз устанавливаете Apache/php/MySQL — Вам лучше выбрать именно это расположение, так как в противном случае Вам придётся менять некоторое количество параметров в конфигурационных файлах.
4. Внесение исправлений в файл httpd.conf

Их смысл: мы сообщаем Апачу, что у него есть модуль, который должен срабатывать на расширение php

В распакованном архиве c:\php есть файл install.txt. В нём написано на англ.языке, какие изменения нужно внести в файл httpd.conf. А именно:

В строке 808 файла install.txt есть строка:
LoadModule php5_module «c:/php/php5apache2.dll»

Её нужно отредактировать, исправив версию Апача:
LoadModule php5_module «c:/php/php5apache2_2.dll»

и вставить в окончание блока инструкций LoadModule файла httpd.conf (примерно 128-я строка файла httpd.conf)

Таким образом, мы указали, что при загрузке apache запускает интерпретатор php в качестве своего модуля. Теперь укажем Апачу, где он должен искать файл php.ini (параметры php)

В строке 812 файла install.txt есть строка PHPIniDir «C:/php». Её нужно поставить в файл httpd.conf (в строку 129).

Теперь нужно указать, что этот модуль должен обрабатывать файлы с расширением php

В строке 809 файла install.txt есть строка:
AddType application/x-httpd-php .php
Её вставляем в окончание блока AddType файла httpd.conf (385-я строка файла httpd.conf)
5. Создаём и описываем в httpd.conf папку для хранения WEB-папок.

Один WEB-сервер может управлять работой нескольких сайтов (или веб-приложений). Различать их Apache будет по доменному имени — и каждому из этих имён назначит в соответствие WEB-папку (в которой будут хранится файлы сайта).

Как мы зададим эти соответствия — я расскажу в следующем параграфе. А пока создадим папку, в которой будут храниться WEB-папки.

Итак, создадим папку c:\www (конечно, могли и иначе назвать). Теперь в файл httpd.conf добавляем описание этой папки: мы разрешим доступ к этой папке по протоколу http (по умолчанию этого доступа нет). После описания общих умолчаний (начиная примерно со строки 197) добавим следующий блок:

AllowOverride All
Order deny,allow
Allow from all

6. Включаем механизм виртуальных хостов

Как я уже сказал, мы можем задать несколько WEB-папок для различный доменных имён на одном компьютере с помощью т.н. виртуальных хостов. В первую очередь нужно настроить Windows на «узнавание» этих доменных имён. То есть задать соответствия
имя ? IP-адрес
Для этого обратимся к файлу %System32%\drivers\etc\hosts
(%System32% — это обычно C:\Windows\System32 или C:\Winnt\System32)

В нём после пояснения мы найдём список соответствий имён и IP-адресов. Добавим пока одно новое имя — tm. Отредактированный файл будет иметь вид:
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a ‘#’ symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

127.0.0.1 localhost
127.0.0.1 tm

Теперь обратимся к папке extra, которая находится в той же папке, что и файл httpd.conf. В ней мы найдём файл httpd-vhosts.conf

Откроем его и внесём наш новый виртуальный хост:

# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup Virtual Host containers for them.
#… (для краткости пропускаем дальшейшие комментарии)

# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any block.
#

DocumentRoot «c:/www/tm»
ServerName tm

Обратите внимание: слэш прямой: c:/www/tm

Теперь ищем в httpd.conf строку
#Include conf/extra/httpd-vhosts.conf
(номер этой строки приблизительно 472-й)
и убираем знак комментария (#) из начала строки.

Ну и теперь, чтоб не «обманывать» Apache, создаём папку c:\www\tm
7. Правим директиву DirectoryIndex

Эта директива расположена примерно в 249-й строке файла httpd.conf. Включаем в список поиска файла по умолчанию в WEB-папке файл index.php:

DirectoryIndex index.html index.htm index.php
8. Создание конфигурационного файла

Переименовываем c:\php\php.ini-production в php.ini.
9. Перезапускаем apache

В случае удачной установки Апача в правом нижнем углу есть пиктограмма вызова монитора Apache.

Двойным кликом запускаем его и нажимаем Restart. После чего закрываем окно монитора Апача

В некоторых последних версиях Windows так перезапустить Apache не получится. Причём можно даже не заметить, что Apache не перезапустился: внешне всё будет выглядеть как при успешном запуске. В этом случае придётся перезапускать службу Apache через панель управления Windows.
10. Проверка

Создаём файл C:\www\tm\index.php следующего содержания:

и запускаем в броузере адрес http://tm/

В случае успеха Вы увидите таблицу параметров php
11. Настройка php
11.1. Редактирование файла php.ini. Цель: подключить нужные нам библиотеки функций.

В строке 809 мы должны поправить директиву extension_dir: она должны иметь вид extension_dir = «c:/php/ext» (без точки с запятой в начале!)

Раздел расширений (Dynamic Extensions) начинается примерно на 946-й строке

В нём мы увидим список расширений. Знак ; в начале — это комментарий. Т.е. если мы стираем ; в начале строки — мы тем самым включаем соответсвующее расширение. А если ставим ; в начале строки — отключаем соответствующее расширение.

Список расширений с описаниями Вы можете найти по адресу:
http://www.php.net/manual/en/install.windows.extensions.php

Мы пока включим три расширения, которые нам понадобятся в работе:
php_gd2.dll — функции для работы с графикой (952-я строка файла php.ini)
php_mysql.dll — функции для работы с MySQL (962 строка файла php.ini)
php_mysqli.dll — функции для работы с MySQL (963 строка файла php.ini)

Обратите внимание: есть две библиотеки функций для работы с MySQL — старая и новая. Документация php настоятельно рекомендует использовать новую — php_mysqli.dll. В то же время большинство сайтов и приложений «по старой памяти» используют старую. Поэтому включим обе, благо они не конфликтуют.
11.2. Перезапускаем apache

Установка php завершена.
12. Установка и настройка MySQL

Установка MySQL предельно проста — вплоть до простого копирования.

Затруднения может вызвать только настройка кириллицы. Этому вопросу я посвятил отдельную статью
13. А не проще ли установить «Денвер»?

Денвер установить, конечно, проще. Но следует помнить, что он собой представляет.

Как гласит сайт проекта, «Денвер» — это «Джентльменский набор Web-разработчика («Д.н.w.р», читается «Денвер») — проект Дмитрия Котерова, набор дистрибутивов (Apache, PHP, MySQL, Perl и т.д.) и программная оболочка, используемые Web-разработчиками для разработки сайтов на «домашней» (локальной) Windows-машине без необходимости выхода в Интернет.»

Таким образом, штатная работа этих продуктов (на сервере организации) даже не декларируется.

Напротив, сайт проекта предупреждает Вас:

Напомним еще раз, что Денвер — это не законченный и надежный Web-сервер, это — всего лишь инструмент, позволяющий отлаживать (тестировать) сайты, «не выходя из дома». Любая попытка использовать его в других целях может быть небезопасна.

* * *

Источник: http://www.tmanager.ru/russian/apache.html

Автор: Юрий Максименко

Share