- Как запустить Apache на Windows
- Настройка Apache на Windows
- Веб-сервер для Windows
- Скачать Apache для Windows
- Официальный сайт Apache
- Как настроить Apache на Windows
- Что может веб-сервер в Windows
- Версии Apache для Windows
- Сборка Apache + PHP + MySQL + phpMyAdmin
- Как установить на Windows Apache 2.4 и PHP 7
- Установка PHP 7 в Windows
- Настройка Apache для использования PHP
- Включение mod_rewrite для перезаписи URL-адресов
- Настройка PHP с MySQL
- Как проверить, установлен ли PHP
- Регистрация службы Apache
Как запустить Apache на Windows
Веб-сервер Apache – это служба, которая работает в фоне и у которой нет графического интерфейса. Эта служба устанавливается и запускается в командной строке.
Если вам нужен только веб-сервер без дополнительных модулей, то вы можете ограничиться базовой настройкой.
Настройка Apache на Windows
На самом деле, базовая настройка веб-сервера крайне проста – необходимо только правильно указать путь до папки, в которой помещены веб-сайты – этого будет достаточно для запуска веб-сервера.
Кстати, в конфигурационном файле уже прописаны значения многих параметров по умолчанию. К примеру, по умолчанию корневой директорией является c:/Apache24. Поэтому если папку Apache24 из скаченного архива вы разархивируете в корень диска C, то вы можете вообще без настройки запустить веб-сервер следующей командой:
И по адресу http://localhost увидите стандартную страницу веб-сервера, которая сообщает, что он работает:
Кстати, для открытия командной строки в Windows используйте сочетание клавиш Win+x и в открывшемся окне выберите Windows PowerShell (администратор).
Настройка веб-сервера выполняется посредством редактирования текстового файла, который размещён в папке Apache24\conf\ и называется httpd.conf.
Этот файл состоит из директив с определёнными значениями. Эти директивы регулируют поведение веб-сервера. Но больше чем директив в этом файле комментариев – они начинаются с решётки (#) – комментарии нужны для человека, который настраивает веб-сервер. Сам сервер строки начинающиеся с # просто игнорирует. Т.е. вы можете просто удалить их.
Этот файл содержит не все возможные директивы – многие из них здесь отсутствуют, поскольку не требуются для большинства задач. Даже в этой заметки мы рассмотрим не все доступные в файле настройки – если описание чего-то пропущено, значит просто не нужно это трогать.
Как уже было сказано, важно установить путь до папки с веб-сайтами. Если она установлена неправильно (например, отсутствует на компьютере), то веб-сервер не запуститься.
Думаю, вы уже обратили внимание, что веб-сервер отличается от других программ для Windows. Если вы знакомы с Linux или другими аналогичными операционными системами, вам должна быть знакома работа в консоли и редактирование текстовых файлов. Пути до файлов тоже записываются не совсем обычно для Windows. Сейчас главное уяснить два правила:
- используйте абсолютные пути до файла (которые начинаются с буквы диска, затем следуют все вложенные папки), а не относительные – у сервера свои правила интерпретации относительных путей, поэтому вы можете не понять друг друга;
- всегда используйте прямые слеши, а не обратные (т.е., «c:/apache» вместо «c:\apache»).
Итак, откройте файл Apache24\conf\httpd.conf любым текстовым редактором (хоть Блокнотом) и вот мы уже готовы к настройке веб-сервера.
Первой идёт директива ServerRoot – это верхняя директория дерева, в которой хранятся файлы конфигурации сервера и журналов. Не добавляйте слэш на конец пути папки.
Значение по умолчанию устанавливается двумя директивами:
Первая директива присваивает значение переменной SRVROOT, которое по умолчанию «c:/Apache24». Вторая директива присваивает значение переменной $ настройке ServerRoot.
ServerRoot — это та папка, в которой находятся все файлы веб-сервера – поменяйте значение на то, куда вы распаковали файлы веб-сервера. Это можно сделать используя конструкцию из двух переменных:
Либо если вы не планируете снова использовать переменную $
Директива Listen позволяет вам привязать Apache к определённому IP адресу и/или порту. Значение по умолчанию:
Оно означает, прослушивать 80 порт на любом IP адресе (т.е. любом сетевом интерфейсе), доступном в вашей системе. Вы можете указать конкретный IP адрес, который нужно прослушивать и, следовательно, на запросы с которого отвечать:
Можно указать несколько портов:
Или несколько IP и портов:
Вы можете использовать любые сочетания, главное правило – порт на указанном интерфейсе (IP) не должен быть занят другой программой.
Значение по умолчанию вполне подходит для локального веб-сервера – т.е. здесь можно просто ничего не менять.
Далее идёт большой список модулей. Некоторые их них отключены (строки закомментированы, т.е. начинаются с #), а некоторые включены.
На самом деле, всё действительно необходимое уже включено – и для работы большинства веб-сайтов менять ничего не нужно – особенно на локальном веб-сервере. Но есть одно исключение – модуль mod_rewrite по умолчанию отключён. Это очень популярный модуль, например, все ЧПУ (понятные для человека адреса страниц) делаются с помощью него. Вы можете его включить, для этого достаточно найти строку:
и раскомментировать её, т.е. заменить на:
Директива ServerAdmin содержит e-mail администратора, этот адрес электронной почты пишется на некоторых страницах веб-сервера, которые автоматически генерируются в случае возникновения ошибок. Подразумеваются, что по этому адресу можно связаться с администратором.
Директива ServerName – это то, как сервер сам себя идентифицирует (называет). Для локального веб-сервера поменяйте строку
запрещает доступ к файловой системе веб-сервера (пока это не разрешено явно) и запрещает использовать файлы .htaccess (пока это не разрешено явно).
Далее идёт довольно объёмная конструкция, но если удалить из неё комментарии, то получается следующее:
DocumentRoot – это директория, где по умолчанию находятся сайты. По умолчанию именно там ищутся все пришедшие на веб-сервер запросы. Укажите здесь путь до корневой папки в веб-документами. Конечный слэш писать не нужно.
Конструкция … нам уже встречалась. Но здесь указывается конкретная папка, для который делаются настройки. Эти настройки перезаписывают общие, которые указаны ранее.
Пути до папок в DocumentRoot и Directory не забудьте поменять на свои!
Обратите внимание, что для установки настроек вновь используется переменная $ , значение которой было присвоено в самом начале. Если использовать синтаксис с $ , то корневая папка документов должна обязательно находится в корневой папке сервера. Я настраиваю сервер по-другому — у меня исполнимые файлы отделены от файлов сайтов, поэтому вместо переменной, можно просто прописать пути до нужной папки с сайтами:
Директива Options включает разные опции. По умолчанию указаны опции Indexes и FollowSymLinks. Первая (Indexes) означает показывать индексные файлы, если запрос не содержит имени файла. Допустим, пользователь открывает адрес http://localhost/site/, то если в этой папке есть индексный файл (например, index.html или index.php), то будет показан этот файл. Понятно, что если сделан запрос на определённый файл, например, http://localhost/site/page.html, то будет показана запрошенная страница.
Вторая опция (FollowSymLinks) означает следовать символьным ссылкам. Это что-то вроде ярлыков в Windows. В Linux с помощью таких ссылок можно собрать в одном сайте файлы, размещённые в различных папках файловой системы. На самом деле, для начинающих администраторов сервера это не очень нужно.
Директива AllowOverride установлена на None, это означает запрет использовать файлы .htaccess. На своём сервере я разрешаю файлы .htaccess (нужны для mod_rewrite, ограничения доступа), поэтому я заменяю её значение на All, получается так:
А директива Require all granted открывает посетителям доступ для веб-документов.
Я уже упомянул индексные файлы, перечень индексных файлов устанавливается конструкцией:
Там всего один файл — index.html. Можно дописать любое количество своих собственных. Я меняю:
Другие настройки обычно не требуется менять для локального веб-сервера.
Веб-сервер для Windows
Apache – это веб-сервер под Windows. На веб-сервере можно размещать сайты и открывать их на своём или на других компьютерах так, будто они находятся в Интернете.
Apache является бесплатным, у него открыт исходный код, сервер гибок в настройке.
Скачать Apache для Windows
Последней версией Apache для Windows является 2.4.46, она вышла 18 февраля 2021 года.
Ссылки для скачивания:
Убедитесь, что у вас установлена последняя версия Visual C++ Redistributable for Visual Studio 2015-2019, которая необходима для работы Apache в Windows (версия 14.28.29325.2 и выше):
Официальный сайт Apache
Официальным сайтом веб-сервера Apache является: https://httpd.apache.org/
Но данный сайт содержит только исходный код и не распространяет бинарные (исполнимые) файлы. Если вы не можете самостоятельно скомпилировать файлы из исходного кода, то вы можете скачать их с рекомендуемого сайта.
Официально рекомендованным источником исполнимых файлов является Apache Lounge. Именно с на его файлы даны ссылки чуть выше.
Как настроить Apache на Windows
Настройка Apache выполняется в текстовых файлах, а для запуска нужно использовать командную строку – для пользователей Windows это может оказаться непривычным. Ситуация осложняется тем, что подсказки в конфигурационных файлах на английском языке, а веб-сервер в случае ошибки выводит очень мало информации.
Если вам нужен только веб-сервер без дополнительных модулей, то вы можете ограничиться базовой настройкой.
Если вы хотите ещё быстрее получить готовый веб-сервер, то к вашим услугам сборки, которые включают все необходимые компоненты и настройки.
Особенностью Apache, PHP и других компонентов веб-сервера является то, что все эти программы являются портативными, т.е. вам достаточно скачать сборку, распаковать её, кликнуть батник для запуска служб и вы через секунду получаете рабочий, правильно настроенный веб-сервер на Microsoft Windows.
Что может веб-сервер в Windows
Веб-сервер на локальном компьютере может абсолютно всё, что умеют веб-сервера на хостингах. Веб-сервер подойдёт для разработки и тестирования сайтов и веб-приложений использующих, например, AJAX. Именно веб-сервер позволит вам работать со структурой веб-сайта так, будто бы он уже размещён на хостинге.
Вы можете подключат и использовать при тестировании и разработке:
- модули Apache (например, mod_rewrite)
- PHP (требуется дополнительная установка)
- базы данных (требуется дополнительная установка)
Версии Apache для Windows
В настоящее время актуальной веткой Apache является 2.4.*. Предыдущее поколение Apache 2.2.* является устаревшим и больше не поддерживается. Новые версии, исправления ошибок и патчи безопасности начиная с 2018 года выпускаются теперь только для Apache 2.4. Именная эта версия предоставлена для скачивания на этом сайте.
Сборка Apache + PHP + MySQL + phpMyAdmin
Если вы хотите в несколько кликов получить работающий веб-сервер Apache + PHP + MySQL + phpMyAdmin на Windows, то скачайте готовую сборку, которая включает полностью настроенный для Windows веб-сервер, который достаточно распаковать и запустить кликом по ярлыку.
Как установить на Windows Apache 2.4 и PHP 7
Проект Apache не предоставляет бинарные версии программного обеспечения, а только исходный код. Тем не менее, их можно получить на сторонних сайтах:
Загрузите 32-разрядную версию Apache Windows ( httpd-2.4.20-win32-VC14.zip ) или 64-разрядную версию ( httpd-2.4.20-win64-VC14.zip ). Проверьте, установлена ли у вас 64-разрядная версия ОС . Чтобы определить это, можно использовать msinfo32.exe . Этот инструмент помогает в сборе информации о компьютере, в диагностике проблем или его можно использовать для доступа к другим инструментам.
Чтобы запустить его, выполните команду Выполнить> msinfo32> нажмите Enter .
После того, как найдете нужную версию, скачайте Zip-архив , а затем извлеките его содержимое в папку C:Apache24 .
Перед запуском сервера Apache , если нужно изменить порт прослушивания на 8181 :
- Откройте в текстовом редакторе файл C:Apache24confhttpd.conf ;
- Найдите следующую строку: Listen 80 ;
- И измените ее на: Listen 8181 .
Теперь можно запустить сервер Apache Windows 7 :
Откройте командную строку от имени администратора и перейдите в подкаталог bin :
Введите httpd.exe и нажмите Enter .
Если на экране появилось диалоговое окно с сообщением об отсутствии файла MSVCR140.dll , необходимо установить Visual C ++ Redistributable для Visual Studio 2015 ( выберите vc_redist.x64.exe , если у вас установлена 64-разрядная версия Windows ).
Теперь откройте браузер и введите в адресную строку http://localhost:8181 , чтобы запустить демонстрационный сайт.
Установка PHP 7 в Windows
PHP 7 — важное обновление для серверного языка веб-разработки PHP . Загрузите zip-архив VC14 x64 Thread Safe (2016-Apr-29 00:38:19) . Если вы загрузили 32-разрядную версию Apache , необходимо установить PHP x86 .
Создайте папку с именем « php7 », извлеките в нее содержимое архива php-7.0.6-Win32-VC14-x64.zip , а затем поместите папку в корень диска C:
Настройка Apache для использования PHP
Откройте файл конфигурации установки Windows Apache C:Apache24confhttpd.conf .
Скопируйте следующие строки в начало файла:
- AddHandler application/x-httpd-php.php ;
- AddType application/x-httpd-php .php .html ;
- LoadModule php7_module «c:/php7/php7apache2_4.dll» ;
- PHPIniDir «c:/php7» .
В разделе добавьте строку index.php и поместите ее перед index.html :
Сохраните файл Apache PHP Windows . Теперь переименуйте файл C:php7php.ini-development в C:php7php.ini.
Включение mod_rewrite для перезаписи URL-адресов
Откройте файл конфигурации Apache C:Apache24confhttpd.conf ;
Найдите в нем строку #LoadModule rewrite_module modules/mod_rewrite.so и удалите символ хеш «#» ;
Найдите все вхождения строки « AllowOverride None » и измените их на « AllowOverride All» .
Настройка PHP с MySQL
Отредактируйте файл php.ini и раскомментируйте каталог расширений. Удалите символ « ; » в начале строк:
Активируйте следующие строки, это даст возможность запуска модулей MySQL :
А также приведенные ниже строки, если вы используете установку Apache PHP MySQL Window s в среде разработки:
Раскомментируйте error_log , чтобы включить ведение журнала файлов:
ВАЖНО! Установите PATH для Windows , чтобы найти PHP
- Кликните правой кнопкой мыши на ярлыке Мой компьютер — Свойства — Дополнительно — Переменные среды ;
- В разделе « Системные переменные » найдите пункт « Путь », кликните по нему и выберите « Изменить »;
- Добавьте в конце путь к папке php ( обязательно после точки с запятой «;» ). Например: « ;C:php7 «;
- Нажмите « ОК ».
Как проверить, установлен ли PHP
Создайте файл по адресу C:Apache24htdocsphpinfo.php и добавьте в него следующий код:
Перезапустите Apache Windows , а затем в браузере перейдите по адресу http://localhost:8181/phpinfo.php . На этой странице должна отобразиться информация об установленной версии PHHP .
Регистрация службы Apache
Если нужно зарегистрировать Apache как службу Windows , откройте командную строку и введите:
Если вы не хотите, чтобы Apache запускался автоматически при запуске / перезагрузке системы, введите: