Установка и настройка Apache, PHP, MySQL в Windows

Обновлено 22.03.2023 01:20. Руководства

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

Содержание

Общая информация

Установка и настройка будет в операционной системе Windows 7 x64, но в Windows 8 и 10 отличия могут быть незначительными.

На начало 2023 года актуальными были следующие версии программ:

  1. Apache 2.4.56
  2. PHP 7.4.32
  3. MySQL Community Server 8.0.22
  4. phpMyAdmin 5.0.4

Мы установим PHP 7 вместо PHP 8. Это связано с тем, что PHP 8 появился в ноябре 2020 года и в январе 2021 года еще не установлен на многих серверах, поэтому мы вернемся к нему, когда он станет более популярен на хостинг площадках.

Данная статья ориентирована на начинающих программистов, которые хотят самостоятельно все настроить, а не скачивать готовые системы WAMP (Windows, Apache, MySQL и PHP), например, Open Server.

Создание структуры папок

Создайте следующие папки на диске C:\

  • папка C:\server
  • папка C:\server\bin
  • папка C:\server\data\htdocs
  • папка C:\server\data\db

Внутри папки bin будут программы Apache, PHP и MySQL, а внутри папки data будут файлы баз данных, скрипты, картинки и другие файлы для сайтов.

Проверьте, что вы создали все папки, что указаны выше. Отстутствие какой-либо папки приведет к ошибке в дальнейшей настройке.

Командная строка от имени администратора

Для работы нам нужно будет периодически запускать программу cmd.exe (Командная строка) от имени администратора.

Если вы не делали это ранее, попробуйте запустить Командную строку от имени администратора, перед продолжением настройки.

Нажмите на кнопку Пуск или нажмите на клавишу Win на клавиатуре и в появившемся меню введите в поисковой строке cmd. Кликните правой кнопкой мыши по cmd и выберите в меню Запуск от имени администратора, как показано на рис. 1.1.

Командной строки от имени администратора
Рис. 1.1. Запуск Командной строки от имени администратора

Может появится дополнительное окно с вопросом о разрешении внести изменения на данном компьютере, нажмите Да.

Установка Visual C++ Redistributable for Visual Studio 2015-2019

Для работы Apache 2.4 нужно скачать и установить Visual C++ Redistributable for Visual Studio 2015-2019.

Скачать версию для Windows 7 x64 можно с официального сайта Microsoft по ссылке: https://aka.ms/vs/16/release/vc_redist.x64.exe (14,2 Mbyte)

Другие версии доступны по ссылке: https://support.microsoft.com/ru-ru/help/2977003/the-latest-supported-visual-c-downloads

Установка Visual C++ Redistributable не должна вызвать сложностей. Она проходит всего в 3 шага, дополнительно вам нужно разрешить выполнение программы, если Windows запросит при установке.

Все шаги представлены на рисунках ниже.

Установка Visual C++ Redistributable
Рис 2.1. Прочтите условия лицензии

Установка Visual C++ Redistributable
Рис 2.2. Процесс установки

Установка Visual C++ Redistributable
Рис 2.3. Сообщение об успешной установке

Установка Apache 2.4

Чтобы скачать Apache для Windows перейдите на сайт: https://www.apachelounge.com/download/

Прямая ссылка для скачивания: https://www.apachelounge.com/download/VS16/binaries/httpd-2.4.46-win64-VS16.zip (10,2 Mbyte)

На момент публикации статьи актуальной была версия Apache 2.4.46. Кликните по ссылке, как показано на рис. 3.1., чтобы скачать архив с Apache.

Выбор ссылки для скачивания Apache
Рис 3.1. Выбор ссылки для скачивания Apache

Далее нужно распаковать содержимое архива в папку C:\server\bin\

У вас должна появиться папка C:\server\bin\Apache24 и 2 файла, как на рис. 3.2. Файлы ReadMe и -- Win64 VS 16 -- можно удалить.

Папка с Apache
Рис 3.2. Папка с Apache

Настройка Apache 2.4

Зайдите по адресу C:\server\bin\Apache24\conf и откройте файл httpd.conf

Файл можно открыть любым текстовым редактором, например, Notepad++.

Вам нужен текстовый редактор, который умеет сохранять файлы в UTF-8 без BOM. Например, Notepad++.

Далее вам нужно будет провести поиск и замену стандартных настроек на новые. Обычно, для поиска можно нажать Ctrl+F или листайте файл вниз, т.к. замены будем проводить по порядку следования настроек.

1. Указываем где находится Apache.

Найти:

SRVROOT "c:/Apache24"

Заменить на:

SRVROOT "c:/server/bin/Apache24"

2. Запрещаем обращаться к Apache из других компьютеров, то есть из вне. Это обеспечит дополнительную безопасность сервера.

Найти:

Listen 80

Заменить на:

Listen 127.0.0.1:80

3. Далее идет список модулей, некоторые из которых уже включены. Нам нужно включить модуль, который отвечает за обработку URL.

Найти:

#LoadModule rewrite_module modules/mod_rewrite.so

Заменить на:

LoadModule rewrite_module modules/mod_rewrite.so

4. Укажем новое имя сервера, которое означает, что сервер будет использоваться для разработки и тестирования скриптов из дома.

Найти:

#ServerName www.example.com:80

Заменить на:

ServerName localhost

5. Меняем путь до папки с нашими скриптами.

Найти:

DocumentRoot "${SRVROOT}/htdocs"

Заменить на:

DocumentRoot "C:/server/data/htdocs"

Найти:

<Directory "${SRVROOT}/htdocs">

Заменить на:

<Directory "C:/server/data/htdocs">

6. Разрешаем использование файла htaccess для указания собственных настроек.

Найти:

AllowOverride controls what directives may be placed in .htaccess files.

Ниже найти:

AllowOverride None

Заменить на:

AllowOverride All

Обратите внимание, вам нужно менять настройки по порядку, иначе, вы можете найти несколько строк AllowOverride None. Вам нужно изменить значение в блоке, который показан на рис. 4.1.

Настройка Apache
Рис 4.1. Настройка Apache

7. Добавим больше файлов, которые могут быть определены, как главные.

Найти:

DirectoryIndex index.html

Заменить на:

DirectoryIndex index.php index.html index.htm

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

Найти:

#Include conf/extra/httpd-vhosts.conf

Заменить на:

Include conf/extra/httpd-vhosts.conf

Мы еще вернемся к файлу httpd.conf, но сейчас все замены сделаны.

Сохраните изменения и закройте файл httpd.conf.

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

Создадим тестовый домен test1.ru, чтобы проверить работу виртуальных хостов.

Зайдите по адресу: C:\server\bin\Apache24\conf\extra и откройте файл httpd-vhosts.conf

Удалите все содержимое файла и вставьте следующие строки:

<VirtualHost *:80> ServerName localhost DocumentRoot "C:/server/data/htdocs/www" </VirtualHost>
<VirtualHost *:80> ServerName test1.ru ServerAlias www.test1.ru DocumentRoot "C:/server/data/htdocs/test1.ru/www" ErrorLog "C:/server/data/htdocs/test1.ru/logs/error.log" CustomLog "C:/server/data/htdocs/test1.ru/logs/access.log" common </VirtualHost>

Сохраните изменения и закройте файл httpd-vhosts.conf.

Создайте следующие папки:

  • папка C:\server\data\htdocs\test1.ru
  • папка C:\server\data\htdocs\test1.ru\www
  • папка C:\server\data\htdocs\test1.ru\logs

Зайдите по адресу: C:\Windows\System32\drivers\etc и скопируйте файл hosts на Рабочий стол.

Откройте файл hosts на Рабочем столе с помощью программы Блокнот и введите внизу следующие строки, как на рис. 5.1:

127.0.0.1 test1.ru 127.0.0.1 www.test1.ru

Файл hosts
Рис 5.1. Файл hosts

Сохраните изменения и закройте файл hosts.

Кликните по файлу hosts на Рабочем столе правой кнопкой мыши и выберите в списке Копировать. Или кликните по файлу и нажмите Ctrl+C.

Перейдите в папку: C:\Windows\System32\drivers\etc

Теперь вам нужно вставить скопированный файл и заменить тот, что лежит в папке. Нажмите Ctrl+V и в появившемся окне выберите Копировать с заменой, как на рис. 5.2.

Вставка hosts
Рис 5.2. Вставка файла hosts с Рабочего стола

Готово, мы настроили виртуальный хост test1.ru, по аналогии вы сможете создавать свои виртуальные хосты.

Создание службы Apache в Windows

Откройте Командную строку от имени администратора.

Введите в Командной строке команду:

cd c:\server\bin\Apache24\bin

и нажмите Enter

Установим Apache, как службу. Для этого введите команду:

httpd.exe -k install

Если все прошло хорошо, запустим Apache, для этого введем команду:

httpd.exe -k start

Все команды представлены на рис. 6.1.

Создание службы Apache
Рис 6.1. Создание службы Apache в командной строке

Чтобы проверить, что Apache работает, откройте ваш браузер и введите localhost. Если вы увидите страницу, как на рис. 6.2., то установка успешно завершена.

Работа Apache
Рис 6.2. Работа Apache

Еще полезные команды Apache

Чтобы удалить сервис Apache:

c:\server\bin\Apache24\bin\httpd.exe -k uninstall

Чтобы перезапустить Apache, например, после обновления настроек или добавления новых:

c:\server\bin\Apache24\bin\httpd.exe -k restart

Установка PHP

Чтобы скачать PHP для работы в Windows перейдите на сайт: https://windows.php.net/download#php-7.4

Прямая ссылка для скачивания: https://windows.php.net/downloads/releases/php-7.4.14-Win32-vc15-x64.zip (25 Mbyte)

Для работы PHP в Windows с сервером Apache нужно выбрать VC15 x64 Thread Safe версию, как на рис. 7.1.

Выбор версии PHP
Рис 7.1. Выбор версии PHP

Создайте папку C:\server\bin\php и разархивируйте туда содержимое загруженного архива. Должно получиться, как на рис. 7.2.

Папка с PHP
Рис 7.2. Папка с PHP

Настройка PHP

Перейдите в папку C:\server\bin\php и переименуйте файл php.ini-development в php.ini. На вопрос при переименовании нажмите Да.

Откройте файл php.ini. Как и с файлом настроек Apache, вам нужно заменить старые значения на новые.

1. Укажем путь до расширений

Найти:

;extension_dir = "ext"

Заменить на:

extension_dir = "C:\server\bin\php\ext"

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

Найти:

;extension=curl
;extension=ftp
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=intl
;extension=imap
;extension=ldap
;extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=openssl
;extension=pdo_mysql

Заменить на:

extension=curl
extension=ftp
extension=fileinfo
extension=gd2
extension=gettext
extension=intl
extension=imap
extension=ldap
extension=mbstring
extension=exif ; Must be after mbstring as it depends on it
extension=mysqli
extension=openssl
extension=pdo_mysql

Если при работе каких-либо скриптов вы увидите ошибку, что нет какого-то расширения, то зайдите сюда снова и уберите знак ; напротив необходимого расширения. Мы включили основные, это расширения для работы с базой данных, русскими буквами и некоторые другие.

Сохраните изменения и закройте файл php.ini.

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

Теперь нужно подключить PHP к Apache.

Зайдите по адресу C:\server\bin\Apache24\conf и откройте файл httpd.conf

В самом низу файла добавьте следующие строки:

LoadModule php7_module "C:/server/bin/php/php7apache2_4.dll" AddHandler application/x-httpd-php .php PHPIniDir "C:/server/bin/php" LoadFile "C:/server/bin/php/libssh2.dll"

Сохраните изменения и закройте файл httpd.conf.

Запустите Командную строку от имени администратора.

Введите в Командной строке команду:

c:\server\bin\Apache24\bin\httpd.exe -k restart

и нажмите Enter.

Чтобы проверить, что PHP установлен и с ним можно работать из Apache создайте скрипт test.php, внутри которого напишите:

<?php phpinfo();

Сохраните этот скрипт по адресу: C:\server\data\htdocs\test1.ru\www

Это стандартная функция языка, которая отобразит информацию о PHP. Но нас интересует, распознает ли Apache наш PHP скрипт?

Введите в браузере адрес: http://test1.ru/test.php

Если скрипт загрузит информацию о PHP, как на рис. 8.1., то все хорошо.

Виртуальный хост с PHP
Рис 8.1. Виртуальный хост с PHP

Установка MySQL

Чтобы скачать MySQL последней версии перейдите на сайт: https://dev.mysql.com/downloads/mysql/

В январе 2021 года актуальной была версия MySQL Community Server 8.0.22 (191 Mbyte)

Вам нужно кликнуть по кнопке Download, как на рис. 9.1., после которой вы можете попасть на страницу с приглашением завести аккаунт в системе Oracle. Этот шаг можно пропустить, для этого кликните по ссылке No thanks, just start my download., которая расположена под текстом, как на рис. 9.2.

Выбор версии MySQL
Рис 9.1. Выбор версии MySQL

Ссылка для скачивания MySQL
Рис 9.2. Ссылка для скачивания MySQL

После того, как архив будет загружен, извлеките все его содержимое в папку C:\server\bin

У вас должна появиться папка C:\server\bin\mysql-8.0.22-winx64, как на рис. 9.3.

Папка с MySQL
Рис 9.3. Папка bin с MySQL

Переименуйте папку в C:\server\bin\mysql

Теперь ваша папка с mysql, по адресу C:\server\bin\mysql должна выглядеть как на рис. 9.4.

Внутри папки MySQL
Рис. 9.4. Внутри папки MySQL

Если у вас мало места на диске C:\ то можете удалить папку C:\server\bin\mysql\lib, она не используется в работе. Это позволит освободить примерно 200 MB.
Обратите внимание, вам нужен редактор Notepad++, чтобы сохранить файл в кодировке UTF-8 без BOM.

Откройте Notepad++ и вставьте туда следующие строки, как на рис. 9.5.:

[mysqld] datadir=C:/server/data/db

# instead caching_sha2_password
default_authentication_plugin = mysql_native_password

Создание файла my.ini
Рис. 9.5. Создание файла my.ini

Сохраните документ с названием my.ini в папке C:\server\bin\mysql, как на рис. 9.6. В поле Тип файла, выберите: Все файлы (All Types).

Сохранение файла my.ini
Рис. 9.6. Сохранение файла my.ini

Откройте Командную строку в режиме Администратора.

Введите команду для создания пользователя root и установки MySQL.

cd C:\server\bin\mysql\bin

Далее введите команду:

mysqld --initialize-insecure --user=root

Далее установим MySQL, как сервис Windows, чтобы он запускался каждый раз при входе в Windows.

Для этого введите команду:

mysqld --install

И далее команду запуска MySQL:

net start mysql

Все команды представлены на рис. 9.7. Если у вас такие же сообщения, то все прошло без ошибок, значит мы успешно установили MySQL.

Установка MySQL
Рис. 9.7. Установка MySQL

Установка phpMyAdmin

Это не совсем обязательная часть, но phpMyAdmin считается очень полезным инструментом для начинающих разработчиков.

Чтобы скачать phpMyAdmin перейдите на его официальный сайт: https://www.phpmyadmin.net/downloads/

Скачайте последнюю версию, на январь 2021 года, это версия 5.0.4

Прямая ссылка на скачивание: https://files.phpmyadmin.net/phpMyAdmin/5.0.4/phpMyAdmin-5.0.4-all-languages.zip (13,7 Mbyte)

После того, как скачали, распакуйте содержимое архива в папку C:\server\data\htdocs

У вас появится папка C:\server\data\htdocs\phpMyAdmin-5.0.4-all-languages переименуйте ее в C:\server\data\htdocs\pma

Зайдите в папку C:\server\data\htdocs\pma и найдите файл config.sample.inc переименуйте его в config.inc

Откройте файл config.inc

1. Разрешим заходить в PMA без ввода пароля для пользователя root.

Найти:

$cfg['Servers'][$i]['AllowNoPassword'] = false;

Заменить на:

$cfg['Servers'][$i]['AllowNoPassword'] = true;

2. Укажите любую комбинацию из 32 символов.

Найти:

$cfg['blowfish_secret'] = '';

Заменить на:

$cfg['blowfish_secret'] = '123456789012345678901234567890sr';

3. Увеличим время хранения cookie. По-умолчанию, это значение равно 1440 секунд, что бывает не достаточно.

Найти:

declare(strict_types=1);

Строкой ниже добавьте:

$cfg['LoginCookieValidity'] = 3600;

Сохраните изменения и закройте файл config.inc.

Зайдите по адресу: http://localhost/pma. Должна появиться страница с формой Входа, как на рис. 10.1.

Вход в phpMyAdmin
Рис. 10.1. Вход в phpMyAdmin

В поле Пользователь введите root и нажмите кнопку Вперед.

Если откроется Панель управления, как на рис. 10.2., то phpMyAdmin готов к работе и успешно настроен.

Интерфейс phpMyAdmin
Рис. 10.2. Интерфейс phpMyAdmin

На этом мы завершили настройку самых популярных программ для разработки на PHP. Мы установили самые актуальные версии программ на начало 2021 года.

Вы уже сейчас можете создавать первые php скрипты, сохранять их либо в C:\server\data\htdocs\www , тогда они будут доступны по адресу: http://localhost/script_name.php или в наш тестовый виртуальный домен test1.ru для этого сохраните ваши скрипты в папке: C:\server\data\htdocs\test1.ru\www