Как установить PHP: все подводные камни процесса. Установка Apache, PHP, MySQL Команды управления Apache через консоль

» Установка PHP под ОС Windows

Установка PHP под ОС Windows

PHP (англ. PHP: Hypertext Preprocessor - «PHP: препроцессор гипертекста») - язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров.

PHP создавался специально для ведения Web-разработок и может использоваться непосредственно в HTML-коде. Синтаксис языка берет начало из C, Java и Perl и является легким для изучения. Преимущественным назначением PHP является предоставление web-разработчикам возможности быстрого создания динамически генерируемых web-страниц, однако, область применения PHP не ограничивается только этим.

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

Краткая история PHP.

В 1994 году датский программист Расмус Лердорф написал набор скриптов на Perl/CGI для вывода и учёта посетителей его онлайн-резюме, обрабатывающий шаблоны HTML-документов. Лердорф назвал набор Personal Home Page (Личная Домашняя Страница). Вскоре функциональности и быстроты Perl - интерпретатора скриптов - перестало хватать, и Лердорф написал на языке C новый интерпретатор шаблонов PHP/FI (англ. Personal Home Page / Forms Interpreter - «Личная Домашняя Страница / Интерпретатор форм». PHP/FI включал базовую функциональность сегодняшнего PHP. Новорожденный язык отличался от своего прародителя более простым и ограниченным синтаксисом.

В 1997 году после длительного бета-тестирования вышла вторая версия обработчика, написанного на C - PHP/FI 2.0. Её использовали около 1 % (приблизительно 50 тысяч) всех интернет-доменов мира.

PHP 3.0 была первой версией, напоминающей PHP, каким мы знаем его сегодня. В 1997 году два израильских программиста Энди Гутманс и Зив Сураски переписали код с нуля: разработчики сочли PHP/FI 2.0 непригодным для разработки приложения электронной коммерции, над которым они работали для проекта Университета.

Одной из сильных сторон PHP 3.0 была возможность его расширения. Возможности расширения PHP 3.0 побуждали разработчиков поставлять новые модули расширения. Возможно именно в этом был секрет ошеломляющего успеха PHP 3.0.

Другой ключевой особенностью PHP 3.0 стала поддержка объектно-ориентированного синтаксиса и намного более мощный и цельный синтаксис языка.

Скромное название "Personal Home Page" уже не очень-то соответствовало реальности и язык был назван PHP: Hypertext Preprocessor (рекурсивное: P HP: H ypertext P reprocessor).

К концу 1998 года PHP использовался десятками тысяч пользователей. В то время PHP 3.0 был установлен приблизительно на 10 % веб-серверов Интернета.

PHP 3.0 был официально выпущен в июне 1998 года после 9 месяцев публичного тестирования.

К зиме 1998 года, практически сразу после официального выхода PHP 3.0, Энди Гутманс и Зив Сураски начали переработку ядра PHP. В задачи входило увеличение производительности сложных приложений и улучшение модульности базиса кода PHP.

Новый движок, названный Zend Engine (от имён создателей, Зива и Энди, также основателей Zend Technologies), успешно справлялся с поставленными задачами и впервые был представлен в середине 1999 года. PHP 4.0, основанный на этом движке и принёсший с собой набор дополнительных функций, официально вышел в мае 2000 года, почти через два года после выхода своего предшественника PHP 3.0. В дополнение к улучшению производительности, PHP 4.0 имел ещё несколько ключевых нововведений, таких как поддержка сессий, буферизация вывода, более безопасные способы обработки вводимой пользователем информации и несколько новых языковых конструкций.

Пятая версия PHP была выпущена разработчиками 13 июля 2004 года. Изменения включают обновление ядра Zend (Zend Engine 2), что существенно увеличило эффективность интерпретатора. Введена поддержка языка разметки XML. Полностью переработаны функции ООП, которые стали во многом схожи с моделью, используемой в Java

Нововведения, однако, были сделаны с расчётом сохранить наибольшую совместимость с кодом на предыдущих версиях языка. На данный момент самыми стабильными и часто используемыми являются именно версии 5.xx

Шестая версия PHP находится в стадии разработки с октября 2006 года. В ней уже сделано множество нововведений и много внимания уделено поддержке Юникода.

Официальный сайт PHP: www.php.net . Там вы можете скачать последнюю версия PHP , справку... Кстати, справка по PHP очень удобная в работе и заменяет множество книжек и бумажных справочников.

Установка PHP под ОС Windows

Примечание: в этой статье мы рассматриваем установку PHP в ОС Windows XP. Установка под ОС Windows Vista аналогична. К моменту установки PHP у вас уже должен быть установлен и настроен веб-сервер Apache (см. статью "Установка web-сервера Apache").

1. Имеется возможность выбора из следующих вариантов: Windows Installer и Manual Installation (zip package). Первый подразумевает использование программы-инсталлятора, второй, соответственно, означает самостоятельную установку. Отличаются они и полнотой функциональных возможностей.

Загрузив инсталлятор, вы сможете установить с его помощью CGI-версию PHP, а также автоматически настроить такие серверы, как Microsoft IIS, Microsoft PWS и Xitami, для работы с данным пакетом. Использование такого способа совместно с Apache нецелесообразно. Автоматическая настройка Apache программой не поддерживается, так что конфигурировать сервер все равно придется вручную. Кроме того, у такого решения есть некоторые другие ограничения.

Воспользуемся самостоятельной ручной установке PHP с помощью zip package. Причем это не так уж сложно как может показаться с первого взгляда.

Итак, скачиваем со страницы http://www.php.net/downloads.php zip-архив для windows. В нашем примере это php-5.2.5-Win32.zip.

2. Распаковываем дистрибутив в папку по вашему выбору. Для простоты можно прямо в папку c:\php5 , но можно и в любую другую.Мы для этой цели выбираем папку C:\MyServers\usr\local\php5 .

3. Перейдите в папку с PHP . Далее надо найти файл php.ini-dist , который находится в данной папке и переименовать его в php.ini . Это файл с настройками.

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

3.1 Для того чтобы нашелся файл php.ini , необходимо либо
а) указать директиву PHPIniDir для Apache , либо
б) создать переменную окружения PHPRC
Панель управления - Система - Свойства системы - Дополнительно - Переменные среды

и указать в реестре Windows ключ HKEY_LOCAL_MACHINE\SOFTWARE\PHP\5\IniFilePath равный C:\MyServers\usr\local\php5.
Для этого можно использовать программу regedit или просто создать и запустить файл php.reg

Windows Registry Editor Version 5.00


"IniFilePath"="C:\\MyServers\\usr\\local\\php5"

3.2 Для того что бы система нашла необходимые библиотеки добавляем к системной переменной PATH пути: C:\MyServers\usr\local\php5\;C:\MyServers\usr\local\php5\ext\;

Панель управления - Система - Свойства системы - Дополнительно - Переменные среды - Системные переменные - Path (и кнопку изменить)...

Примечание: и для Windows XP и Windows Vista данные действия одинаковы. Но необходимы права администратора.

4. Если вы планируете использовать свой сервер для отладки скриптов, то советуем исправить error_reporting для отображения всех ошибок = E_ALL.
Т.е. error_reporting = E_ALL
Данная директива указывает, насколько подробным должен быть вывод предупреждений и сообщений об ошибках. Для отладки скриптов пусть выводятся все сообщения.

5. Найдите include_path (она спрятана в комментарии), уберите знак комментария и внесите изменения:
include_path = "C:\MyServers\usr\local\php5\PEAR"
PEAR - это набор разнообразных библиотек написанных на PHP . Некоторые из этих библиотек входят в дистрибутив.

6. Исправьте extension_dir с extension_dir = "./" на extension_dir = C:/MyServers/usr/local/php5/ext
Это одна из самых важных директив, без нее расширения PHP просто не подключатся.

7. Теперь подключим те расширения, которые потребуются нам для работы. Не подключайте все расширения подряд! Используйте только те, что действительно нужны. Найдите список extensions и уберите знаки комментариев для:
extension=php_gd2.dll
extension=php_mysql.dll

Это мы подключаем расширения для работы с изображениями и СУБД MySQL .

8. Сохраните файл php.ini. Запустите файл php.exe . Если перед вами возникает пустая консоль без сообщений об ошибках, значит, все в порядке.

9. Для веб-сервера Apache PHP может работать в двух вариантах: в виде модуля и в виде CGI-программы. Установить PHP в виде CGI-программы проще, но она будет запускаться каждый раз при обращении к скриптам. Когда же PHP работает в виде модуля, то его код является частью сервера и выполняется как единое целое. Такой подход обеспечивает лучшее быстродействие. Так же в этом случае доступны некоторые полезные функции сервера из PHP -программ (скриптов).

Рассмотрим установку PHP в виде модуля. Для этого нам необходимо вернуться и вспомнить материал из статьи про установку веб-сервера Apache . Данный этап несколько проще и сводится к простому добавлению к файлу httpd.conf нескольких новых строк. Перейдите в папку C:\MyServers\usr\local\Apache2.2\conf и найдите этот файл.

Добавьте в конец секции LoadModule строку:
LoadModule php5_module "C:/MyServers/usr/local/php5/php5apache2_2.dll"

Add this line inside the conditional brace

Добавьте в блок строку:
AddHandler application/x-httpd-php php
Эта директива связывает расширение файла php с уникальным идентификатором MIME- ТИПА. Т.е. файлы с расширением .php будут обрабатыватся PHP .

Подправим так называемые файлы индекса (для того чтобы главная страница по умолчанию была - index.php, а не index.htm):

DirectoryIndex index.php index.htm index.html

И добавим опцию PHPIniDir C:\MyServers\usr\local\php5 для того чтобы загружался наш php.ini, а не стандартные настройки. Если строка PHPIniDir "C:\MyServers\usr\local\php5" прописана в httpd.conf - то php.ini грузится с указанного пути.

Хотя, все можно сделать проще и быстрее.

Подправим файлы индекса (см. выше), но возможно вы это уже сделали при настройке сервера.

Создадим файл php5_mod.conf в директории C:\WebServers\usr\local\Apache2\conf\ (воспользуйтесь стандартной программой Блокнот)

Подключаем данный файл к httpd.conf (вносим эту строку в httpd.conf в самый конец):
Include conf/php5_mod.conf

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

10. Протестируем работу PHP . Убедимся что мы все сделали правильно и наши скрипты работают. В папке C:\MyServers\home\localhost\www создайте файл test.php.

- это стандартная функция PHP . Использование phpinfo() позволяет получить симпатичную страничку, содержащую подробные сведения как о самом PHP, так и о системе в целом, а также о вашем сервере Apache. Рекомендую скачать с php.net справку php_manual_ru.chm и использовать ее для знакомства с PHP .

Запустите браузер и укажите адрес: http://localhost/test.php . Если вы увидите эту страницу, значит все хорошо. Еще раз проверьте откуда загружается файл php.ini (должна быть строка Loaded Configuration File C:\MyServers\usr\local\php5\php.ini)

Теперь наш сервер Apache получил возможность работать с языками web-программирования, которые являются сегодня одними из самых распространенных и популярных.

С этого момента вы можете создавать собственные скрипты с использованием PHP. Дополнительно можно еще установить СУБД (например MySQL ), с которой могли бы взаимодействовать ваши скрипты при решении некоторых задач. Этот шаг будет будет рассмотрен в позже.

P.S . Для создание скриптов можно использовать и обычный блокнот Windows , но это не очень удобно. Я рекомендую использовать редактор PHP Expert Editor . PHP Expert Editor - удобный в использовании PHP редактор, разработанный специально для PHP мастеров. Регистрация для жителей бывшего СНГ бесплатна.

Курс предназначен для базовой подготовки администраторов сайтов, созданных на "1С-Битрикс: Управление сайтом" . Изучив курс, вы освоите основные методы администрирования системы, а также пополните знания по темам, изученным в курсе Контент-менеджер .

Если вы добросовестно изучите курс, то научитесь:

  • управлять доступом к системе, сайтами, пользователями, группами пользователей;
  • работать с инструментами системы;
  • использовать возможности интерфейса по управлению системой;
  • работать с модулями "1С-Битрикс: Управление сайтом", связанными с оптимизацией и безопасностью работы сайта;
  • выполнять работу по конфигурированию веб-системы для оптимальной работы.

Если вам предстоит самостоятельная установка системы или перенос сайта на хостинг, то без курса Установка и настройка Курс Установка и настройка предназначен для специалистов устанавливающих "1С-Битрикс: Управление сайтом" или "Битрикс24 в коробке".

Скачать материалы курса в формате CHM .

Как проходить учебный курс?

В статье описывается установка Apache 2.4 + PHP 5.6 + MySQL 5.6 на операционную систему Windows 7 / 8 / 8.1 / 10

Прежде чем продолжить чтение, обратите внимание на то, действительно ли вам необходимо устанавливать и настраивать всё это под Windows?Может быть Вам стоит обратить внимание на и не тратить свое время и нервы на настройку того же самого напрямую в Windows? В любом случае, прочтите статью про . Возможно она сэкономит вам не только время, но и здоровье.

Данная инструкция будет полезна начинающим WEB-разработчикам, которые собираются установить на своем ПК с ОС Windows WEB-сервер Apache с интерпретатором PHP последних версий. Конечно же, намного проще установить сборку, наподобие Denwer или прибегнуть к использованию инсталляторов и не париться по поводу настроек. Однако каждый WEB-разработчик обязан понимать процесс работы WEB-сервера, процесс его установки и настройки.

Если Вы хотите установить PHP 7, то обратитесь пожалуйста к статье.

Если в процессе сборки сервера по этой инструкции Вы столкнулись с проблемами и все еще считаете себя WEB-разработчиком, то будет правильным шагом разобраться в возникших проблемах, а не писать в комментарии что инструкция говно. Инструкция рабочая. Проверено временем и сотнями инсталляций. Будьте внимательней при выполнении простых шагов. Выполнение шагов вручную и разбор ситуаций, если не заработало, добавит Вам skill как разработчику. Если Вы не WEB-разработчик и не планируете им быть, то подыщите простой способ установки в интернете - данная инструкция не для Вас.

Обратите внимание, что под Windows XP данные версии VC11 запустить будет невозможно (или крайне затруднительно).

Подготовительные работы

Убедитесь, что у вас именно Windows 7 или новее. Если у Вас Windows XP, данная инструкция не поможет Вам, так как описанная здесь версия Apache не работает под Windows XP.

Удалите все WEB-серверы, которые устанавливали до этого, зайдите в службы и убедитесь, что там нет служб Apache или IIS. Если у вас уже установлен какой-либо веб-сервер, второй параллельно скорее всего не заработает вовсе.

Если у Вас есть Скайп, обязательно отключите в настройках использование 80 порта. В конечном итоге Вы должны убедиться, что ни одна служба не использует 80й порт.

Для работы очень желательно иметь файловый менеджер, позволяющий создавать файлы с любыми расширениями, либо, что еще лучше, редактор кода, наподобие Sublime Text или Notepad++ или полноценную IDE.

Структура папок может быть различной, однако данная инструкция написана под определенную структуру и, если ей следовать, всё гарантированно заработает.
Перед тем как начать, создайте на диске D папку USR , внутри которой создайте 5 подпапкок: apache , php , tmp , www , log . Именно так. Без указания номеров версий.

В каталоге www создаем индексные файлы (при помощи файлового менеджера или редактора кода), которые будут нужны для проверки того, что все работает:

  • index.html с содержимым: It works!
  • index.php с содержимым:

Если файлового менеджера / редактора кода / IDE нет, скачайте архив с этими двумя файлами . Но, если Вы считаете себя WEB-разработчиком, Вы должны обзавестись инструментами.

В системную переменную PATH добавляем:

;D:\USR\apache;D:\USR\apache\bin;D:\USR\php;

Замечания!

Приведенные в примерах конфигурационных файлов номера строк могут отличаться для других версий apache и php.
Все команды, включая редактирование файлов, должны осуществляться от имени Администратора.

Установка Apache 2.4

Хотя для простой разработки на PHP и нет необходимости в отдельном WEB-сервере (в PHP встроен собственный WEB-сервер, которого почти всегда достаточно для разработки одного проекта), все же рекомендуется произвести установку и настройку WEB-сервера Apache, хотя бы потому, что программист обязан знать эти тонкости. В конечном итоге придется работать с WEB-сервером и придется разбираться с его конфигурацией. Так что приступим.

  1. Загружаем Apache 2.4 binaries VC11 под свою систему по ссылке http://www.apachelounge.com/download/VC11/ Скорее всего у Вас 64 разрядная ОС, поэтому Вам понадобится файл с именем, наподобие httpd-2.4.xx -win64-VC11.zip
  2. Если нужны какие-то дополнительные модули, их можно загрузить там же (для базовой установки нет необходимости)
  3. Разархивируем содержимое папки Apache24 из скаченного архива в D:\USR\apache . Обратите внимание, что в D:\USR\apache нужно положить не папку Apache24 из архива, а ее содержимое. Инсталлировать ничего не требуется.
  4. В файле изменяем значение ServerRoot на "d:/USR/apache" (строка 37 ) и значение DocumentRoot Direcroty ) на "d:/USR/www" (строки 242 и 243 ). Так же следует раскомментировать строку 218 и изменить ее на: ServerName localhost:80
  5. Изменяем параметры хранения логов в том же файле (находим параметры и изменяем): ErrorLog "D:/USR/log/apache-error.log" CustomLog "D:/USR/log/apache-access.log" common
  6. Устанавливаем сервис Apache (от имени Администратора). Открываем командную строку от имени Администратора и вставляем туда следующую строку: D:\USR\apache\bin\httpd.exe -k install
  7. Следим за сообщениями об ошибках во время установки сервиса. Если все сделано верно, никаких ошибок быть не должно. Если у вас после выполнения строки не появилась снова командная строка, то вы что-то сделали неправильно. Просто воспользуйтесь функциями скопировать и вставить, чтобы не допускать ошибок при перепечатке.
  8. Создаем на рабочем столе ярлык для D:\USR\apache\bin\ApacheMonitor.exe и/или помещаем его в автозагрузку (для открытия окна автозагрузки в WIN8 необходимо нажать WIN+R, затем ввести shell:Startup и нажать ОК)
  9. Запускаем ApacheMonitor. В системном трее появится ярлык. Нажимаем на него левой кнопкой, выбираем Apache24 -> Start.
  10. В браузере заходим на http://localhost/ — должны увидеть It works!
  11. Если не увидели такой надписи, разбираемся, что пошло не так (читаем логи, гуглим, пытаемся самостоятельно разобраться с проблемой, раз уж решили разбираться в тонкостях работы веб-сервера)

Установка PHP 5.6

  1. Загружаем последнюю версию VC11 x86 Thread Safe или VC11 x64 Thread Safe по ссылке http://windows.php.net/download/ . Обратите внимание, что нужен именно VC11 и именно Thread Safe . Разрядность должна быть как у Apache. Файл, который Вам нужен, скорее всего будет называться наподобие: php-5.6.11-Win32-VC11-x86.zip или php-5.6.11-Win32-VC11-x64.zip
  2. Извлекаем содержимое архива в D:\USR\php . Как в случае с Apache, инсталлировать ничего не требуется.
  3. В файл D:\USR\apache\conf\httpd.conf добавляем строки: LoadModule php5_module "d:/USR/php/php5apache2_4.dll" AddHandler application/x-httpd-php .php # Путь к файлу php.ini PHPIniDir "D:/USR/php"
  4. И изменяем значение DirectoryIndex на index.html index.php (строка 276 )
  5. Используя ApacheMonitor перезапускаем Apache (Apache24 -> Restart)
  6. Заходим браузером http://localhost/index.php и убеждаемся, что PHP работает.
  7. Делаем копию файла D:\USR\php\php.ini-development с именем D:\USR\php\php.ini
  8. Пользуясь поиском находим, раскомментируем и изменяем параметры: extension_dir = "D:/USR/php/ext" sys_temp_dir = "D:/USR/tmp" extension=php_mysql.dll extension=php_mysqli.dll extension=php_openssl.dll date.timezone = Europe/Zaporozhye
  9. Выполняем в командной строке php -m чтобы просмотреть список подключенных модулей.
  10. Перезапускаем Apache используя ApacheMonitor

Виртуальные хосты в Apache

  1. Если на компьютере производится отладка нескольких проектов, то могут понадобиться виртуальные хосты (сайты). На примере будем рассматривать два виртуальных хоста: s1.localhost и s2.localhost . Для удобства будем создавать папки с такими же названиями, что совсем не обязательно в реальной системе.
  2. Следует учесть, что при использовании виртуальных хостов, параметр DocumentRoot конфигурационного файла Apache более не имеет смысла. Основным хостом сервера (который будет доступен по адресу http://localhost/) теперь является первый виртуальный хост в конфигурационном файле виртуальных хостов!
  3. Для начала необходимо добавить в файл c:\Windows\System32\drivers\etc\hosts строки: 127.0.0.1 s1.localhost 127.0.0.1 s2.localhost

    Делать это нужно от имени Администратора. Желательно после этого перезагрузиться, но на практике этого не требовалось. Если изменить файл не удается (права доступа), вы можете скопировать его на рабочий стол, изменить, а затем скопировать обратно.

  4. Создаем папки для виртуальных хостов D:\USR\www\s1.localhost и D:\USR\www\s2.localhost , в которых будут располагаться файлы. В каждой из папок создаем файл index.html с содержимым S1 и S2 соответственно (для контроля того, что все работает как нужно)
  5. Затем создаем папки для логов: D:\USR\log\s1.localhost и D:\USR\log\s2.localhost - тут будут храниться логи каждого из сайтов. Вообще-то, логи можно хранить в одной папке, но я привык делать так - мне так более удобно.
  6. Далее необходимо включить поддержку виртуальных хостов. В файле D:\USR\apache\conf\httpd.conf раскомментировать строку Include conf/extra/httpd-vhosts.conf
  7. Далее редактируем файл d:\USR\apache\conf\extra\httpd-vhosts.conf — он должен выглядеть так (каждому виртуальному хосту свой блок VirtualHost): ServerAdmin [email protected] DocumentRoot "D:/USR/www/s1.localhost" ServerName s1.localhost ServerAlias www.s1.localhost ErrorLog "D:/USR/log/s1.localhost/error.log" CustomLog "D:/USR/log/s1.localhost/access.log" common ServerAdmin [email protected] DocumentRoot "D:/USR/www/s2.localhost" ServerName s2.localhost ServerAlias www.s2.localhost ErrorLog "D:/USR/log/s2.localhost/error.log" CustomLog "D:/USR/log/s2.localhost/access.log" common
  8. Первый виртуальный хост s1.localhost теперь будет основным хостом системы, т.к. его блок следует первым в конфигурационном файле, т.е. будет доступен при входе на

Дистрибутив Apache2.2.2 с в виде инсталлятора с именем apache_2.2.2-win32-x86-no_ssl.msi. Вы сможете найти его по адресу www.sai.msu.su/apache/dist/httpd/binaries/win32/

Запустите загруженный инсталлятор на выполнение. Когда установщик спросит Вас о том, куда установить Apache укажите ему директорию c:/Apache2.2

Примечание

Все дальнейшие инструкции будут основываться на предположении, что Apache устанавливается именно в каталог c:/Apache2.2. Если Вы устанавливаете Apache в другой каталог, то Вы должны соответствующим образом адаптировать инструкции к своей ситуации.

Установка Apache из инсталлятора достаточно прозрачна и не вызывает особых трудностей, вследствие чего не рационально приводить ее полное описание в данной статье. Приведем лишь одно диалоговое окно, которые пользователю требуется заполнить в процессе установки. Это окно выбора имени сервера. В поля «Network Domain» и «ServerName» запишите имя сервера, на работу с которым Apache будет настроен по умолчанию.


Примечание

Данная инструкция описывает установку сервера Apache в предположении, что он будет использоваться только для локального тестирования сайтов и не будет работать в сетях Интранет и Интернет. Для работы сервера в сетях Интранет и Интернет Вы должны ввести реальное доменное имя, которые будет использоваться сервером.

Если процесс установки прошел корректно, то по ее завершению Apache2.2 у Вас уже должен быть запущен в качестве службы. Чтобы проверить так ли это откройте список служб Windows («Пуск» | «Панель управления» | «Администрирование» | «Службы» ) и найди в нем строку Apache2.2. (или Apache2). Состояние службы: работает или нет отображается в третьем столбце.

Если Вы не можете найти в списке служб строчку Apache2.2, то вероятно в процессе установки произошел сбой и Apache не установился в качестве службы. В этом случае, Вам необходимо установить Apache, в качестве службы самостоятельно. Для выполнения этого понадобится программа с консолью, например FAR, WindowsCommander, TotalCommander и т.п.

Откройте программу с консолью, перейдите в каталог c:/Apache2.2/bin и выполните команду:

C:/Apache2.2/bin/httpd.exe -k install

В ответ Вам должно быть выдано сообщение «The Apache2 service is successfully installed» . Внешний вид консольного окна приведен на рисунке.


Первый запуск

Управление Apache-ем (пуск, остановка, перезапуск) осуществляется либо через графический интерфейс управления службами Windows, либо в консоли выполнением файла httpd.exe с определенными ключами.

Управление службами Windows осуществляется через контекстное меню, открываемое по нажатию правой кнопки мыши на имени службы. Если Apache еще не запущен, то выполните команду «Пуск» из контекстного меню.


Если Вам нравится работать в консоли то для управления Apache используются ключи, приведенные ниже.

Команды управления Apache через консоль

Httpd.exe -k start (Запуск службы)
httpd.exe -k stop (Остановка службы)
httpd.exe -k restart (Перезапуск)


По умолчанию, корневой директорией сервера установлена директория c:/Apache2.2/htdocs . Именно в ней расположен файл index.html отображаемый по имени localhost. За определение корневой директории сайта отвечает директива DocumentRoot в файле c:/Apache2.2/conf/httpd.conf .

DocumentRoot "C:/Apache2.2/htdocs"

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

Однако, перед тем как делать это следует провести минимальную настройку конфигурационного файла httpd.conf. По умолчанию, Apache настроен так, чтобы запретить любой доступ к директориям сайтов и разрешения должны быть установлены явно для каждой директории, как это сделано для директории C:/Apache2.2/htdocs. Если же Вы перенесете корневую директорию сервера в другой каталог, не настроив соответствующие разрешения, то в ответ Вам будет выдана ошибка 403 Forbidden и страница, изображенная на рисунке.


Поэтому, если вы НЕ собираетесь использовать Ваш новейший Apache для предоставления услуг хостинга в Интернете или в локальной сети, то следует сразу же снять установленную по умолчанию защиту.

Найдите в файле С:/Apache2.2/conf/httpd.conf строки:


Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Satisfy all

Обратите внимание на строку Deny from all .

Она запрещает всякий доступ к директориям, в том числе и к директориям виртуальных хостов. При попытке обращения к ним Apache ответит ошибкой 403 Forbidden. Противовесом ей является директива «Allow from all». Установка этой директивы отменяет действие директивы «Deny from all».

Можно устанавливать директиву Allow from all для каждой директории и для каждого виртуального хоста, но можно поступить проще и убрать (или закомментировать) директиву «Deny from all» из контейнера.


Options FollowSymLinks
AllowOverride None
Order deny,allow
# Deny from all
Satisfy all

После выполнения этих нехитрых действий перезапустите Apache. Как это сделать описывается выше.

Установка PHP

Cовременный web-сервер уже немыслим без поддержки динамически-генерируемых страниц. В России лидером среди технологий создания динамических страниц и web-приложений является технология PHP. Ниже будет рассмотрен процесс подключения PHP на примере версии 5.3.5. Если у Вас уже установлена эта версия PHP, то можете сразу переходить к разделу «Подключение PHP к Apache2.2.2».

Дистрибутив с PHP Вы можете загрузить с нашего сайта по адресу . По ссылке можно также ознакомиться с правилами выбора дистрибутива и почему мы взяли на себя смелось предложить скачать дистрибутив с нашего сайта, а не с официального php.net. При загрузке дистрибутива, представленного по ссылке, предполагается, что вы будете устанавливать PHP в качестве модуля.

Распакуйте zip-архив с php в директорию c:/php-5.3.5. На этом установка PHP завершена. Дальнейшие действия будут касаться настройки связки PHP+Apache и конфигурирования самого PHP.

Примечание

Все дальнейшие инструкции будут основываться на предположении, что Вы используете php-5.3.5, который установлен в каталог c:/php-5.3.5. Если у Вас другая версия PHP или Вы устанавливаете php в другой каталог, то Вы должны соответствующим образом адаптировать приводимые инструкции к своей ситуации.

Подключение PHP к Apache2.2.2

Проблемы с подключением PHP к Apache2.2

Если Вы попытаетесь подключить штатный модуль php5apache2.dll к Apache2.2.2, то Вас ожидает неудача. Apache не захочет запускаться, выдавая сообщение, изображенное на рисунке.


А в журналах системы и приложений появятся следующие сообщения

The Apache service named reported the following error:
>>> httpd.exe: Syntax error on line 115 of C:/Apache2.2/conf/httpd.conf:
Cannot load C:/php-5.3.5/php5apache2.dll into server: \xcd\xe5 \xed\xe0\xe9
\xe4\xe5\xed \xf3\xea\xe0\xe7\xe0\xed\xed\xfb\xe9 \xec\xee\xe4\xf3\xeb\xfc.

Библиотека php5apache2.dll предназначена для Apache 2.0.X, для Apache 2.2.X необходимо поключать библиотеку php5apache2_2.dll (она находится рядом с php5apache2.dll в дистрибутиве).

Конфигурирование httpd.conf для подключения PHP

Для подключения php, в качестве модуля, необходимо добавить всего 3 инструкции в файл httpd.conf

Инструкции для подключения PHP в httpd.conf

LoadModule php5_module c:/php-5.3.5/php5apache2_2.dll
AddType application/x-httpd-php phtml php
PHPIniDir "c:/php-5.3.5/"

Эти строки следует поместить в примерно в середину файла httpd.conf, например, сразу после директив LoadModule. Конкретное расположение этих директив не имеет принципиального значения, однако нельзя помещать их в начале, а также и в самом конце файла httpd.conf.

  • Первая строка загружает модуль PHP, реализованный в библиотеке php5apache2_2.dll
  • Вторая строка устанавливает соответствие между файлами с расширением php и mime-типом application/x-httpd-php, который обрабатывается модулем PHP.
  • Третья строка позволяет явно указать расположением конфигурационного файла php.ini.

Примечание

Директивы PHPIniDir сильно не хватало в Apache1.3, так как часто возникала путаница в настройке php при наличии нескольких копий файла php.ini, либо при размещении его в неподходящей директории.

Следующим шагом необходимо создать конфигурационный файл для PHP. В httpd.conf в директиве PHPIniDir местом расположения конфигурационного файла php была указана директория c:/php-5.3.5. Сам конфигурационный файл должен называться php.ini

В директории c:/php-5.3.5 находятся несколько шаблонов конфигурационных файлов. В качестве основы возьмем файл c:/php-5.3.5/php.ini-recommended и переименуем его в php.ini . Таким образом, конфигурационный файл PHP (php.ini) будет располагаться в директории c:/php-5.3.5 и именно в него должны вносится все изменения конфигурации PHP.

После внесения изменений в httpd.conf и создания файла php.ini перезагрузите Apache.

Создайте тестовый php-скрипт под именем phpinfo.php, выполняющий одноименную функцию и сохраните его в директорию c:/Apache2.2/htdocs .

Скрипт phpinfo.php

echo phpinfo ();

// Обратите внимание, что использован полный синтаксис записи
// php-скрипта. ?>

Примечание

В тестовом скрипте phpinfo.php для определения PHP-скрипта использован полный синтаксис. В дистрибутивах PHP последних версий синтаксис короткой записи по умолчанию отключен. За включение режима короткой записи отвечает директива short_open_tag в файле php.ini. Ее нужно установить в значение On .

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


Если отчет функции phpinfo() в виде "фиолетовых таблиц" отобразилися - значит php успешно выполняется Apache-ем.

Возможные ошибки

Apache загружается, но вместо "фиолетовых таблиц" открывается пустая страница.

Проверьте: тестовый скрипт записан в через полный синтаксис или через сокращенный? Т.е.:

Должно быть записано
echo phpinfo ();
?>
вместо
echo phpinfo ();
?>

В этой статье мы рассмотрим установку и настройку 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ь при установке приложений. Но в любом случае, их необходимо будет настроить под конкретную машину. Скачать php.ini и httpd.conf

Скачать Apache можно с зеркал приведённых на официальном сайте http://www.apache.org/dyn/closer.cgi . При поиске следует помнить, что Apache так же может называться httpd, по имени его демона в UNIX. На зеркалах обычно много различных файлов, например:
httpd-2.0.49-win32-src.zip - это архив с исходными кодами (src) для Windows (win32) Web-сервера Apache (httpd) версии 2.0.49.
httpd-2.0.49.tar.gz - тоже самое, но для Linux, в котором программы принято распространять в исходных кодах.
apache_2.0.50-win32-x86-no_ssl.exe - а вот это, откомпилированный под архитектуру (x86) для Windows (win32) без поддержки SSL(no_ssl) сервер Apache (apache) версии 2.0.50 - вот он и нужен.

Замечание

Бинарные коды дистрибутивов Apache распространяются в нескольких вариантах, как с расширением *.exe, так и *.msi и имеют название вида httpd_версия_win32_*_.msi.

Чтобы вам не мучатся, вот ресурс где можно его взять: http://apache.rinet.ru/dist/httpd/binaries/win32/
Вторая и третья цифра в версии могут отличаться от приведённых здесь – следует выбирать самую последнюю версию, так как в ней устранены ошибки обнаруженные в предыдущих версиях.

PHP 5 можно загрузить из раздела нашего сайта.

Дистрибутив MySQL можно загрузить со страницы нашего сайта.

Полное справочное руководство на русском языке можно найти по адресу .

После того как мы запаслись всеми необходимыми дистрибутивами можно приступать к установке. Порядок установки Apache, PHP и MySQL не имеет значения. Начнём с Web-сервера Apache.

Установка Web-сервера Apache

Запустите установщик Web-сервера Apache. Результатом будет окно с лицензионным соглашением, после принятия которого, следует перейти к следующему окну с краткой информацией о нововведениях во второй версии Apache. Следующее окно, показанное на рисунке, позволяет ввести информацию о сервере: доменное имя сервера , имя сервера и адрес электронной почты администратора . Если установка происходит на локальную машину, то в поля для доменного имени и имени сервера следует ввести localhost (см. рисунок.). В нижней части окна предлагается выбрать номер порта по которому сервер будет принимать запросы (80 или 8080).


localhost - это имя для использования сервера на локальной машине, которое связано с IP-адресом 127.0.0.1, который зарезервирован для локального использования.

После этого будет предложен способ установки: стандартный (Typical ) или выборочный (Custom ), позволяющий выбрать компоненты сервера вручную. Следующее окно позволяет выбрать каталог установки сервера, по умолчанию это C:Program FilesApache Group , но мы рекомендуем выбрать другой каталог, например, С:www. После этого мастер установки сообщит о готовности к процессу установки и после нажатия кнопки Install , будет произведено копирование файлов сервера. Если установка прошла успешно, Windows автоматически запустит Apache.

После успешной инсталляции при наборе в окне браузера http://localhost/ или http://127.0.0.1/ - должна загрузится страница сервера.

Теперь необходимо научиться управлять Apache, а именно научится запускать, останавливать и перезапускать сервер. Существует много способов осуществить эти операции: при помощи утилиты ApacheMonitor, используя консоль управления сервисов Windows, используя пункты меню Пуск, из командной строки… Мы рассмотрим консоль управления сервисов Windows, позволяющего настроить Apache для автоматического старта при запуске системы. Для запуска консоли управления выполните команду
Пуск->Настройка->Панель управления->Администрирование->Службы .
В появившемся окне консоли, на приведённом ниже рисунке, следует выбрать сервис Apache2. Контекстное меню, открывающееся по нажатию на правой кнопке, позволяет осуществлять запуск, остановку и перезапуск сервиса.


Службы Windows позволяют осуществлять запуск фоновых приложений при старте системы. Для этого необходимо перейти в окно Свойства, выбрав в контекстном меню сервиса пункт Свойства и в появившемся окне в выпадающем списке "Тип запуска " выбрать пункт "Авто ".

Конфигурирование Apache

Web-сервер - сложный программный продукт работающий на разных платформах и в разных операционных системах по всему миру. Поэтому для корректной работы на установленной системе его необходимо настроить (сконфигурировать).
По умолчанию настройки Apache расположены в файле httpd.conf в директории conf. Далее будут описаны основные директивы файла httpd.conf и их общеупотребительные значения.

Пути к файлам

В конфигурационных файлах Apache и PHP Вам часто придется указывать пути к различным директориям и папкам. В операционных системах UNIX и Windows при-меняются различные разделители каталогов. В UNIX используется прямая косая черта "/", например /usr/bin/perl, в в Windows обратная, например, c:Apachein. Вообще, в некоторых директивах Apache и PHP работают оба вида разделителей каталогов: прямой(/) и обратный(), но так как и Apache и PHP изначально разрабаты-вались под UNIX, то применяя их "родной" формат, Вы сможете избежать ряда проблем. Поэтому пути в настроечных файлах (httpd.conf и php.ini) рекомендуется писать через слеш в формате UNIX - "/". Например:

ScriptAlias "/php_dir/" "c:/php/"

Директивы файла httpd.conf

Port

Port 80

Устанавливает порт TCP, который используется Apache для установки соединения. По умолчанию используется 80 порт.

Примечание

Единственная причина использования нестандартного порта - это отсутствие прав на использование стандартного порта. При использовании нестандартного порта, например, 8080 номер порта следует указывать в адресе, например: http://localhost:8080/.

ServerAdmin

ServerAdmin [email protected]

Содержит e-mail-адрес администратора web-сервера, который будет отображаться при ошибках работы сервера.

ServerName

ServerName myserver

Содержит имя компьютера для сервера.

ServerRoot

ServerRoot "C:/Apache2"

Указывает на каталог, содержащий файлы WEB-сервера Apache.

Примечание

Не путайте директиву ServerRoot с директивой DocumentRoot, которая указывает каталог для файлов WEB-сайта.

DocumentRoot

DocumentRoot "C:/Apache2/htdocs"

Определяет каталог, в котором расположены файлы WEB-сайта.

Контейнер

Сфера действия директив внутри этого контейнера распространяется на все файлы и подкаталоги внутри DocumentRoot.


Options FollowSymLinks Includes Indexes
AllowOverride All

  • Директива AllowOverride установленная в значение All разрешает переопределять значения главного конфигурационного файла httpd.conf в файлах.htaccess.
  • Директива Options FollowSymLinks разрешает Apache следовать символическим ссылкам.
  • Директива Options Includes разрешает выполнение директив SSI (Server Side Includes) в коде страниц web-сайта.
  • Директива Options Indexes указывает, что нужно возвращать содержимое каталога, если отсутствует индексный файл.

DirectoryIndex

DirectoryIndex index.html index.phtml index.php

Содержит список индексных файлов, которые следует отображать при обращении к директории без указания имени файла (например, http://localhost/test/).

AddDefaultCharset

AddDefaultCharset windows-1251

Устанавливает кодировку по умолчанию, если кодировка не установлена в заголовке HTML-документа. Также Вам может потребоваться указывать значение кодировки KOI8-R.

Создание виртуальных хостов

На одном WEB-сервере Apache можно установить несколько WEB-сайтов. Эта функция сервера называется виртуальным хостингом. Ниже рассмотрим создание виртуальных узлов на основе имен. Виртуальные узлы обычно расположены в конце файла httpd.conf.

Сначала требуется указать какой IP-адрес используется для виртуальных хостов.



# Директивы виртуального хоста

Файл httpd.conf. Контейнер


ServerAdmin webmaster@may_domain.ru
DocumentRoot c:/www/mysite
ServerName www.mysite.ru
ServerAlias www.site.ru www.host2.ru
ErrorLog logs/mysite-error.log
CustomLog logs/mysite-access.log common

Рассмотрим директивы виртуального узла:

  • DocumentRoot указывает каталог, где расположены файлы (странички) данного виртуального узла (WEB-сайта)
  • ServerName указывает имя виртуального узла, по которому к нему можно обратиться. В данном случае, по адресу http://www.mysite.ru/.
  • ServerAlias содержит псевдонимы имен виртуального узла. В данном случае к виртуальному узлу можно также обратиться, используя имена: http://www.site.ru/ и http://www.host2.ru/.
  • ErrorLog и CustomLog указывает имена логов сервера для этого виртуального хоста.

Контейнеры обычно располагают один за другим в конце файла httpd.conf.

Файл httpd.conf. Настройка виртуальных хостов

NameVirtualHost 127.0.0.1:80

# Директивы виртуального хоста 1


# Директивы виртуального хоста 2


# Директивы виртуального хоста 3

Примечание

Для применения изменений, вносимых в файл httpd.conf, Apache следует перезагрузить.

Для того, чтобы обращаться к виртуальным узлам по именам их следует прописать в базы данных DNS-сервера. Если Вы используете Apache для тестирования файлов на локальной машине, то имена ваших виртуальных узлов следует прописать в файле hosts. Для Windows 2000 и XP он расположен в каталоге C:WindowSystem32Driversets. Файл hosts содержит записи вида:

Формат записей файла hosts

127.0.0.1 www.mysite.ru
127.0.0.1 www.site.ru
127.0.0.1 www.host2.ru

Установка и настройка PHP

Для установки PHP следует создать каталог c:/php и разместить в нём файлы из zip-архива дистрибутива. После этого следует переименовать конфигурационный файл php.ini-dist в php.ini и скопировать его в директорию Windows.

Установка PHP в качестве модуля

Установка PHP в качестве модуля немного повышает быстродействие, так как модуль PHP загружается один раз при запуске Web-сервера

Замечание

При установке PHP в качестве модуля настройки из php.ini читаются один раз при запуске Web-сервера. Поэтому при внесении изменений в php.ini необходимо перегрузить Apache для того, чтобы внесенные изменения вступили в силу.

Для установки PHP откройте файл главный настроечный файл Apache httpd.conf на редактирование и удалите символы комментариев со следующих строк, при необходимости изменив их:

Файл httpd.conf. Подключение PHP как модуль Apache


LoadModule php5_module c:/php/php5apache2.dll

Примечание

Установка PHP, как CGI-приложения

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

Примечание

При установке PHP, как CGI перестанут работать некоторые заголовки, например, Вы не сможете организовать авторизацию пользователей средствами PHP. Авторизации можно будет реализовать только средствами самого Apache с помощью файлов.htaccess.

Для установки PHP откройте главный настроечный файл httpd.conf на редактирование, найдите в нем закомментированные строки подключения PHP и измените их следующим образом:

Файл httpd.conf. Подключение PHP как CGI

AddType application/x-httpd-php phtml php

Options ExecCGI

ScriptAlias "/php_dir/" "c:/php/"
Action application/x-httpd-php "/php_dir/php-cgi.exe"

Примечание

Вместо директории c:/php подставьте Вашу директорию с установленным PHP.

Конфигурирование PHP (файл php.ini)

Так как на локальной машине вы, скорее всего, будете заняты тестированием Ваших Web-приложений, то необходимо должным образом настроить конфигурационный файл php.ini. Найдите директиву error_reporting и установите для неё следующее значение:

Это значение настроит PHP таким образом, что при работе PHP-скриптов будут отображаться все ошибки, а "замечания" будут игнорироваться. Так же обходимо проследить, чтобы директива display_errors, была включена:

Display_errors = On

Если данная директива отключена (Off), то сообщения об ошибках не будут выводится в окно браузера и в случае возникновения в коде ошибки вы будете гадать перед девственно белым окном - что бы это означало.
Так же необходимо проследить, чтобы директива variables_order имела следующее значение:

Variables_order = "EGPCS"

Буквы здесь означают следующее:
E - переменными среды
G - переменными передаваемыми по методу GET (G)
P - переменными передаваемыми по методу POST (P)
C - Cookies
S - сессии
Отсутствие какой-либо из букв не позволит вам работать с соответствующими переменными.

Следующая директива, которая может потребовать настройки – это register_globals . Если данная директива включена

Register_globals = On

то переменные передаваемые метором GET, POST, через cookies и сессии можно использовать в PHP-скрипте, обращаясь к ним просто как обычным переменным $someone.
Если данная директива отключена

Register_globals = Off

то к таким переменным можно будет обращаться только при помощи суперглобальных массивов ($_POST, $_GET и т.п.).
Директива register_long_arrays позволяет использовать суперглобальные массивы в старом формате ("длинном" - $HTTP_GET_VARS, $HTTP_POST_VARS и т.д.)

Register_long_arrays = On

Теперь необходимо настроить индексный файл. Если в окне браузера набрать строку http://localhost/, а не http://localhost/index.html. Сервер всё равно предоставит браузеру index.html, так как этот файл является индексным и ищется в директории первую очередь, если не указан конкретный файл. Теперь необходимо настроить http.conf, таким образом, чтобы Web-сервер Apache так же реагировал на файлы index.php. Для этого найдте в http.conf директиву DirectoryIndex и исправьте её следующим образом:

DirectoryIndex index.html index.html.var index.php

После этого необходимо перегрузить сервер Apache, а в корневой директории виртуального хоста ("C:/www/scripts") создать пробный файл PHP (index.php):

phpinfo ();
?>

В случае успешной настройки, обращение по адресу http://localhost/index.php отобразит фиолетовую таблицу с текущими настройками PHP, которая выдаётся функцией phpinfo().
Таким образом, у нас настроена связка Apache и PHP и можно переходить к настройке MySQL. Распакуйте дистрибутив MySQL во временную директорию и запустите установщик. Контролировать работу сервера MySQL можно точно так же как и Apache, используя консоль управления сервисов Windows.

Подключение MySQL

Подробная методика подключения к PHP расширения MySQL описана в статье по ссылке: .

Если сервер MySQL уже установлен на Вашей машине, то следующим шагом будет настройка PHP для работы с базами данных MySQL.

Откройте на редактирование файл php.ini из каталога Windows. Для подключения библиотеки расширения MySQL Вам нужно убрать символ комментария;(точка с запятой) из строки:

Extension=php_mysql.dll

Также проверьте значение директивы extension_dir

Extension_dir ="c:/php-5.0/ext"

Она должна указывать на каталог, где хранятся расширения PHP. Разделители каталогов рекомендуется писать в формате UNIX (/) - обратный слеш. Однако, если ничего не получается, просто откатите назад значение директивы extension_dir, а библиотеку php_mysql.dll скопируйте в корень C:/php-5.0/ - в большинстве случаев это должно помочь.

Если PHP Вас подключен как модуль, то Вам также необходимо скопировать библиотеку libmysql.dll из каталога с установленным PHP в системный каталог C:/Windows/System32. Чтобы внесенные изменения вступили в силу - перезагрузите Apache.

Для проверки работы MySQL перезапустите сервер Apache и создайте проверочный скрипт со следующим кодом:

$dblocation = "127.0.0.1" ;
$dbname = "test" ;
$dbuser = "root" ;
$dbpasswd = "" ;

$dbcnx = @ mysql_connect ($dblocation , $dbuser , $dbpasswd );
if (! $dbcnx )
{
echo "

К сожалению, не доступен сервер mySQL

" ;
exit();
}
if (!@
mysql_select_db ($dbname , $dbcnx ))
{
echo "

К сожалению, не доступна база данных

"
;
exit();
}
$ver = mysql_query ("SELECT VERSION()" );
if(! $ver )
{
echo "

Ошибка в запросе

"
;
exit();
}
echo
mysql_result ($ver , 0 );
?>

В случае успешной интеграции MySQL в связку Apache и PHP, обращение к проверочному скрипту выведет в окно браузера версию сервера MySQL.

В новых версиях MySQL (начиная с 4.1.0) изменился порядок работы с национальными кодировками, поэтому старый код может вызывать появление в таблице базы данных знаков вопроса "????????" вместо русского текста. Для того, чтобы этого не возникало в начало PHP-скрипта, после установки соединения с базой данных, следует поместить следующие строки:

mysql_query ("set character_set_client="cp1251"" );
mysql_query ("set character_set_results="cp1251"" );
mysql_query ("set collation_connection="cp1251_general_ci"" );
?>

Установка расширений PHP

На последок вам возможно понадобится настроить некоторые расширения PHP, они настраиваются точно так же как и MySQL.

Так для того, чтобы подключить графическую библиотеку GDLib в php.ini необходимо раскомментировать строку:

Extension=php_gd2.dll

Проверьте после этого наличие данной библиотеки в папке c:phpext. После внесения изменений в php.ini перезапустите сервер. Что бы быстро проверить: подключилась ли библиотека - выполните функцию phpinfo(). Если все в порядке, то в таблице, которая отображается функций phpinfo(), должен появится раздел "gd

При использовании устаревшего имени php.exe, использовавшегося в более ранних версиях вместо php-cgi.exe также возможно появлении ошибки:

403 Forbidden You don"t have permission to access /__php_dir__/php.exe/test.php on this server

HTML-файлы выполняются, а PHP-скрипты нет

При ненастроенном подключении PHP при обращении к файлам с расширением php, например: http:/localohost/index.php открывается окно с запрос на загрузку такого файла. Это говорит о том, что не настроена обработка файлов с расширением php. Проверьте в файле httpd.conf существование следующей строки:

AddType application/x-httpd-php phtml php

Notice: Undefined variable...

На новом, только что установленном, PHP можно часто видеть сообщения вида:

Notice: Undefined variable: msg in C:/Main/addrec.php on line 7

Error_reporting = E_ALL & ~E_NOTICE

Не подключается MySQL

Иногда возникают проблемы с установкой MySQL. Следует проконтролировать запускается ли MySQL в качестве сервиса каждый раз при старте системы. Для этого откройте консоль сервисов:

Пуск | Настройка | Панель управления | Администрирование | Службы

найдите там MySQL - запустите. Чтобы сервер стартовал при каждой загрузке системы нажмите правую кнопку мыши на сервисе и выберите "Свойства" - в открывшемся выпадающем списке "Тип запуска" выберите пункт "Авто".

Если при запуске Apache и при обращении ко скриптам выдается сообщение о невозможности загрузки библиотеки php_mysql.dll.

PHP startup: Unable to load dynamic library c:/php/ext/php_mysql.dll
- не найден указанный модуль

То еще раз сверьтесь с инструкциями из раздела, где описывается подключение к PHP библиотеки для работы с MySQL. Используете ли Вы "правильную" версию файла php_mysql.dll (именно для той версии PHP, которая установлена в системе)?
Версии файла php_mysql.dll различаются для разных версий PHP, хотя и имеют одно и тоже название.

  • Использование разделителей каталогов формате Windows (обратный слеш): c:apache/bin. Для надежной работы следует использовать разделители в формате UNIX (прямой слеш), например: c:/apache/bin.
  • Существование нескольких настроечных файлов php.ini на машине, либо отсутствие такого файла. Нужный файл php.ini должен лежать в директории Windows. Проведите поиск по дискам компьютера, найдите все лишние версии файлов и удалите их.
  • Любые возникающие по установке связки Apache+PHP+MySQL вопросы вы можете задать на нашем форуме посвященном установке и настройке Apache, PHP и библиотек расширений .

    В продолжение темы:
    Роутеры

    Сохранение для игры Grand Theft Auto 5 PC - Сейв обновлен 06.05.2015 - Игра пройдена на 90% - Полностью пройдена сюжетная линия (69 из 69 заданий) - После последнего...