Тарифы Услуги Сим-карты

Apache: установка и настройка веб-сервера. Сам себе хостмастер или установка Apache на платформе Windows

Ниже я написал инструкцию как на на локальном компьютере с Windows 7 — настроить сервер Apache и установить на него PHP, MySql и phpMyAdmin.

Установка Apache

Скачиваем дистрибутив с сервером Apache с сайта http://httpd.apache.org/download.cgi . Выбираем версию 2.2.22 и скачиваем установщик для windows. На домашнем компе вам вряд ли понадобится SSL, выбираем — «Win32 Binary without crypto (no mod_ssl) (MSI Installer) «.

Перед установкой отключите скайп, или в настройках скайпа отключите использование 80-го порта, так как это будет помешать установке.

Устанавливаем Apache запуская файл инсталяции. Все шаги при установке — стандартные.

Нажимаем Next.

Соглашаемся с лицензией.

Воводим данные во все три текстовых поля. Можно ввести несуществующий домен типа test.test или example.com. Эти данные нужны для создания базового конфигурационного файла. Под текстовыми полями одна из самых важных настроек - установить Apache как службу или как обычную программу. Выбираем «for All Users, on port 80, as a Service - Recommended» - установить как службу.

Выбираем Custom (выборочная установка).

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

Жмем Install.

Завершаем установку.

Установка завершена. В трее появится значок Apache, с помощью которого можно быстро остановить/запустить.

Проверяем работоспособность. Зайдите в браузере по адресу http://localhost/ ю Если все сделано правильно вы увидите надпись «It Works!». Поздравляю, первый шаг закончен успешно.

Примечание.

Рекомендую сразу включить поддержку ЧПУ ссылок, для этого раскомментируйте строку LoadModule rewrite_module modules/mod_rewrite.so в файле httpd.conf . Он находится в папке conf в месте куда у вас установился Apache.

Было так:
{codecitation}#LoadModule rewrite_module modules/mod_rewrite.so{/codecitation}

Должно стать так:
{codecitation}LoadModule rewrite_module modules/mod_rewrite.so{/codecitation}

Здесь и в дальнейшем, раскомментировать — значит убрать знак комментария — #, который находится в начале строки.

Продолжение следует.





Внимание!
Не важно, ставите вы сервер только для тестирования скриптов или как рабочую версию, вы должны знать, что сразу после установки и запуска сервера он станет доступен за пределами вашего компьютера. Даже если у вас нет белого ip к вам смогут зайти другие клиенты вашего провайдера внутри сети.
Сразу после установки сервер не имеет никаких защит, все открыто и все без паролей, в самом лучшем случае сломают ваш сервер, а в худшем могут затереть все файлы на компьютере, в том числе и сам windows.
По этой причине, после установки сервера заблокируйте доступ к серверу с помощью сетевого экрана или других подобных программ. После всех настроек можно будет открыть доступ.

В данной статье я расскажу как установить сервер apache и все необходимые компоненты под windows всех версий, в том числе и VISTA (32 и 64).
Устанавливать сервер apache на windows скорее всего вы будете на домашний компьютер, так как во всех других случаях на windows навряд ли придется ставить, поэтому я буду упоминать, что установка идет именно на домашний компьютер.
Этот вариант установки и настройки подойдет не только для тестирования скриптов, но и для запуска рабочего сервера.

Если вы решили ставить рабочий сервер дома (не для тестирования), то вам потребуется:

1. Белый IP (внешний или уникальный или выделенный). Конечно есть сервисы, которые умеют через свой ip направлять трафик на ваш динамический или даже серый IP, но для нормального сервера это не подойдет.
Белый IP приобретается у своего провайдера за дополнительные деньги.

2. ДНС сервер. Чтобы связать ваши доменные имена с вашим сервером вам потребуется ДНС сервер. В домашних условиях содержать ДНС нет никакого смысла, так как для этого есть бесплатные сервисы.
Если ваш регистратор домена не предоставляет услуги ДНС, тогда можете воспользоваться бесплатным сервисом xname.org
. Настраивать ДНС лучше всего после установки сервера.

Приступаем к установке сервера.
Для установки всего, что нужно возьмем - готовый набор всех необходимых компонентов сервера.
XAMPP очень полезная вещь. Это набор состоящий из apache , php , mysql , ftp сервера , sendmail , perl и много другого. Во все эти компоненты не внесено изменений(либо очень незначительные), так как XAMPP только установщик, это не самостоятельный сервер.
После установки получим полноценный сервер, такой же, как если бы устанавливали каждый компонент вручную.

Еще один большой плюс, XAMPP все установит в одну папку. Все настройки, все данные, все файлы будут в одной папке. Делать резервную копию такого сервера очень просто. Сохранили всю папку и весь сервер сохранился, загрузили эту папку на другой компьютер и весь сервер работает на другом компьютере.

Комментарии

18.02.2010 виктор
У меня тоже дома такой сервер стоит.
Купил нетбук за 10 тыщ, и тупо воткнул в него xampp, именно так как тут написано.
И стоит вот уже третий месяц, электричества практически не жрет(около 20 ват), канал интернета 5 мегабит, сайты просто летают.
И зачем надо арендовать эти выделенные сервера или VDS.......

18.02.2010 виктор
забыл добавить, пять сайтов находятся на этом ноутбуке, общая посещаеомость 3 тыщи в сутки

07.06.2010 Кирилл
А Денвер и ХАМПП - это принципиально не одно и тоже?

07.06.2010 Админ
Кирилл, принципиально почти одно и тоже.
Только в денвере внесено много изменений в сервер из-за чего сервер в денвере работает не так как надо. В нем все адаптировано под удобную работу в windows.
Несколько раз пытался тестировать крупные скрипты в денвере, не получилось полностью отладить, так как работает совсем не так как ожидается.
В XAMPP никаких изменений в сервер не внесено, он лишь помогает установить все компоненты.

06.08.2010 vlad
пасибо за информацию

02.09.2010 Виктор
Спасибо вам большое за информацию очень помогла. Взял на заметку

12.09.2010 Андрей
Спасибо большое.Ведь есть же сайты где нормально,понятно и по русски написано.

P.S. / Админ,не забудь поправить,что апач не включается если в скайпе и тим вайфере занят порт 80./

12.09.2010 админ
Андрей, да, сам однажды наступил на эти грабли. Не мог понять, почему апач не работает по 80 порту.
Если у кого во время установки xampp говорит, что не прошел тест по 80 порту, смотрите в скайпе в настройках, возможно скайп занял этот порт.
Так же могут быть глюки и после установки.
В статью эту информацию добавлю попозже.

24.10.2010 Mikan
Доброго времени суток. Люди добрые помогите с таким вопросом. Есть большая сеть, хочу сделать внутренний веб сервер, попробовал xampp получилось все работает теперь проблема другого плана: как сделать что бы клиент из сети не писал в строке браузера ип адрес сервера что зайти на сайт. А вводил нормальный человеческий адрес к примеру даже такой www.primer.primer.ru ну что то подобное.

25.10.2010 вишня
Mikan, раз ты задаешь такие вопросы, значит эта большая сеть создана не тобой?
А раз она создана не тобой, то тебе надо обратиться к админам, которые рулят этой сетью, так как прописать домен можно только у них, и тогда домен будет виден внутри сети, если конечно админы захотят.
Ну а дальше уже в настройках виртуальных хостов xampp прописываешь этот домен и все....

А если есть белый ip, то проще купи домен, 200 рублей в год стоит и будет еще лучше, деньги то небольшие.

14.12.2010 Дмитрий
У меня один вопрос есть настройки для игрового сервера например для КС1.6
просто я поставил белый ip и мне надо настроить. Вот я вкл сервер и у меня пишит локальный ip а не инетовский мне надо как то настроить чтобы показывал инетовский ip и могли заходить на него... как это сделать???

14.12.2010 Виктор
Дмитрий, это не много другая тема.
Здесь настройка веб сервера, а не игрового.
Если конечно кто-то знает, может и подскажет, но думаю там парой фраз не отделаться.

18.12.2010 Константин
у меня все работает только как сделать чтобы мой сайт работал в интернете?

21.12.2010 Алексей
XAMMP рулит)))

23.12.2010 Виктор
Скажите, а можно ли хостить свой сайт с помощью ХАММР??? сайт сделан на платформе юкоза)) хочу чтобы диск D был для моего сайта как хостинг!!

24.12.2010 админ
Виктор, если у вас есть скрипт юкоза, можете хостить сайт.

24.12.2010
В смысле скрипт????? мне нужно закачивать фильмы на свой диск Д и чтоб через мой сайт люди смотрели их!! скрипт то зачем??

28.12.2010 Александр
Установил.
Сделал всё как вы сказали.
При запуске выдает что порт занят.
Всё проверил, порт свободен,
(использовал Windows Worms Doors Cleaner для проверки и поиска... также без результатов. Пожалуйста помогите...
(скриншот: http://imagepost.ru/images/419/21552347.jpg)

28.12.2010 Виталий
Александр, а что со скайпом? Пользуетесь?
Если да, то значит он занял 80 порт. Проверьте.
В настройках скайпа отключите использование 80 порта.

19.01.2011 андрей
Скажите уважаємий админ, а в xamp сендмаил ето только емулятори и они ничего на почту не отправляют или ето не емулятори?:

andew

2016-12-05T17:32:10+00:00

2017-10-16T18:32:08+00:00

5986

В статье описана портативная установка WEB сервера Apache на Windows из zip архива, включая все детали и шаги, такие как поиск и получение актуальной версии дистрибутива Apache для Windows, структура каталогов сборки, настройка Apache перед запуском, тестирование http и https соединений, инсталляция Apache как системной службы Windows. Следуя скринкасту и инструкциям из статьи вы сможете самостоятельно организовать полноценный WEB сервер Apache на Windows и использовать его как для WEB разработки, так и для хостинга своих сайтов.

Apache на Windows

Apache - наиболее распространенный WEB сервер, который используется на многих хостингах и платформах и прекрасно справляется со своими обязанности для мелких и средних проектов и WEB сайтов. Так же, Apache поддерживается практически всеми хостинг провайдерами и часто предоставляется уже преднастроенным пользователю. Apache является открытым программным обеспечением, не требует платы за использование и очень хорошо сочетается с PHP языком программирования, CMS и сайтами, написанными на PHP , за счет встроенной поддержки и интеграции с PHP , т.к. Apache , в первую очередь, предназначен для отдачи динамического содержимого. Долгое сотрудничество Apache и PHP делает связку WEB сервера Apache с языком программирования PHP отлаженной, проверенной временем и хорошо настраиваемой платформой для веб приложений, базирующихся на PHP . Многие, достаточно крупные WEB проекты используют именно Apache в связке с PHP CMS . Особенно привлекает в Apache его доступность и простота, в сочетании с большой гибкостью и функциональностью, наличие огромного количества документации и примеров по его настройке и эксплуатации.

Несмотря на то, что Apache преимущественно используется на Unix и Linux системах он, с тем же успехом и без потери в функциональности, может использоваться и на Windows . Использовать Apache на Windows можно как для WEB разработки, так и для полноценного хостинга сайтов на PHP CMS . Однако, на мой взгляд, наиболее удобно использовать Apache на Windows именно тем, кто ведет PHP веб разработку и тестирование CMS и при этом работает на Windows . Например, если вы постоянно работает на Windows , но вам нужно развернуть и протестировать сайт на PHP CMS, например, WordPress , Joomla или Yii .

В таком случае у вас есть несколько выборов:

  • виртуальная машина VM с Linux , что затратно по времени развертывания и потреблению ресурсов системы;
  • различные сборки Win+AMP ;
  • самостоятельно установить все необходимы компоненты Apache , MySQL , PHP на Windows и настроить, как если бы это было на Linux .
  • Больше вариантов смотри в статье: " "

Использовать виртуальную машину с Linux это очень хороший вариант, но он не всегда удобен, т.к. сама по себе, работающая VM , будет забирать у вашей системы ресурсы, и при слабом железе вы столкнетесь с тормозами, что не добавить комфорта в работе. Так же, нужно будет полностью настроить Linux на VM как WEB сервер. Однако если ваш PC достаточно мощный для такого варианта, то такой подход будет, все же, лучшим решением.

Вариант использования уже готовых сборок Win+AMP тоже не лишен недостатков. Главный недостаток таких сборок в том, что они предлагают свою систему конфигурации Apache , MySQL и PHP , которая часто сильно отличается от нормального подхода при настройке Apache на реальном Linux сервере. Поэтому эти сборки, предлагая вроде бы как облегчение в конфигурации Apache, на самом же деле еще больше запутывают и ломают стандартный поход к конфигурации WEB сервера. Еще одни из недостатков готовых сборок Win+AMP - это привязанность к сайту разработчиков этих сборок, необходимость регистрироваться для получения дополнительных компонентов, а иногда и делать оплату или терпеть рекламу. И самое главное в том, что работая с такими сборками, трудно получить правильное представление о настройке Apache , MySQL и PHP , как это выполнялось бы на реальном Linux сервере. Соответственно, когда придется настраивать Apache и другие компоненты LAMP на реальном Linux сервере, придется заново переучиваться уже на правильные методы и подходы настройки и конфигурации Apache и других компонентов LAMP путем внесения изменений в конфигурационные файлы.

Что делать, если нет желания вникать в системы конфигурации этих сборок, a хочется настраивать и использовать web сервер Apache точно так же, как это делается на Linux сервере, т.е. использовать правильный и естественный подход правки конфигурационных файлов. Именно в этой ситуации, когда вы хотите работать с Apache на Windows точно так же, как и на Linux , самостоятельная, отдельная установка Apache и будет полезна и целесообразна, тем более, что делается это достаточно легко и стандартно, а настройка выполнятся точно также как на Linux сервере.

Как добавить поддержку PHP как обработчика сценариев в Apache на Ubuntu или Windows детально описано в статье Установка PHP7 на Windows в разделе Настройка .

Portable Apache на Windows

Apache не предоставляет официальных сборок под Windows , но есть исходники сервера и есть люди, которые делают и выкладывают сборки web сервера Apache для операционный системы Windows . В примерах этой статьи мною будет использоваться для получения таких сборок Apache для Windows сайт: Apache Haus - Your place for the Apache Server and Modules on Windows , на котором размещены для свободного скачивания сборки Apache для Windows на странице загрузки .

В целях безопасности и предотвращения заражения системы вирусами и троянами, рекомендую скачивать дистрибутивы только из официальных источников. Так же отдавайте предпочтение zip архивам для ручной инсталяции. И даже в этом случае, проверяете скачанные файлы актуальным антивирусом. На своем опыте неоднократно убедился, что в сети нередко предлагают дистрибутивы в виде .exe архива, который содержит вирусы или трояны .

Выбор сайта Apache Haus Downloads , как поставщика дистрибутива Apache , мною сделан не случайно по следующим причинам:

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

В примерах этой статьи будет выполнена инсталляция сборки Apache 2.4.23 x64 , в состав которой входит: OpenSSL 1.0.2j, nghttp 1.15.0, Zlib 1.2.8 (mod_deflate), PCRE 8.39, APR 1.5.2, APR-Util 1.5.4, IPv6 and TLS SNI enabled на операционную систему Windows7 x64 . Данная сборка выполнена с применением Visual Studio 2015 с использованием пакета VC14 - Visual C++ 2015 x64 Redistributable Package , который должен быть установлен в вашей системе. Компоненты VC14 , обычно уже имеются в системе, но если они не установлены, то скачать VC14 для инсталляции можно на официальном сайте Microsoft по ссылке : .

ШАГ 1 развертывание дистрибутива Apache

Выбор каталога установки Apache

Сборка Apache 2.4.23 x64 от Apache Haus поставляется в zip архиве и не имеет инсталлятора Windows, поэтому считается портативным (portable ) вариантом дистрибутива Apache . Portable версия имеет ряд удобств и позволяет разместить дистрибутив в любом каталоге файловой системы и самостоятельно настроить запуск Apache так как вам нужно.

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

В примерах этой статьи и скринкаста дистрибутив Apache будет развернут в директорию "Z:\WebDevelopment\Apache24" и, соответственно, ServerRoot директива будет определена как "Z:/WebDevelopment/Apache24" .

Формат значения пути в директиве ServerRoot следующий:

  • слеши прямые и одинарные;
  • завершающего слеша нет;
  • если есть пробелы, то путь должен быть в кавычках ("path_to" ),
  • на Linux значение чувствительно к регистру символов.

Структура дистрибутива Apache

Сборка Apache 2.4.23 x64 от Apache Haus имеет следующую структуру каталогов:

|Apache24 ....................Домашняя директория Apache - ServerRoot |-- bin ..................Директория с бинарниками Apache | `-- ... | `-- ApacheMonitor.exe...Программа монитор для управления Apache как Windows службой | `-- httpd.exe...........Главный исполняемый файл web сервера Apache | `-- ... |-- cgi-bin .......Директория обработчика для CGI program |-- conf ..........Директория с конфигурационными файлами Apache | `-- extra ....Директория с дополнительными конфигами Apache, которые подключаются в httpd.conf | | `-- httpd-ahssl.conf | | `-- httpd-autoindex.conf | | `-- httpd-dav.conf | | `-- httpd-default.conf | | `-- httpd-deflate.conf | | `-- httpd-info.conf | | `-- httpd-languages.conf | | `-- httpd-manual.conf | | `-- httpd-mpm.conf | | `-- httpd-multilang-errordoc.conf | | `-- httpd-proxy-html.conf | | `-- httpd-ssl.conf | | `-- httpd-userdir.conf | | `-- httpd-vhosts.conf | `-- original ........Директория исходных конфигов от Apache, добавлена в сборку для справки | `-- ssl .............Директория для SSL сертификатов | `-- charset.conv ....Конфиг установки кодировки, подключаются в httpd.conf | `-- httpd.conf ......Главный конфиг Apache в данной сборке от Apache Haus | `-- magic ...........Конфиг скриптов для модуля mime_magic | `-- mime.types ......Конфиг установки MIME типов | `-- openssl.cnf .....Конфиг OpenSSL |-- error ................Директория с конфигами страниц ошибок для Apache |-- htdocs ...............Директория и хост по умолчанию с документацией от Apache Haus |-- icons ................Директория с иконками |-- include ..............Директория служебных скриптов Apache |-- lib ..................Директория вспомогательных библиотек |-- logs .................Директория файлов журналов Apache |-- modules ..............Директория модулей Apache |-- ABOUT_APACHE.txt |-- CHANGES.txt |-- INSTALL.txt |-- LICENSE.txt |-- NOTICE.txt |-- OPENSSL-NEWS.txt |-- OPENSSL-README.txt |-- README.txt |-- readme_first.html......Краткий help от Apache Haus, лежит в корне zip архива

Данная сборка Apache 2.4.23 x64 от Apache Haus для Windows является полным дистрибутивом WEB сервера и содержит все необходимые исполняемые и конфигурационные файлы для полноценной работы Apache как веб сервера, включая и использование https соединения. Соответственно, установил эту сборку и настроив ее, вы получаете полный, со всеми модулями, web сервер Apache, который можете использовать не только для разработки и тестирования, но и для продуктивного хостинга сайтов на Windows .

В zip архиве данной сборки так же вложен файл readme_first.html , который содержит краткое описание компонентов данной сборки и их версий. Так же, в этом файле приведены краткие инструкции от Apache Haus по установке Apache , VC14 , инсталляции Apache как системной службы и даны необходимые ссылки.

ШАГ 2 настройка Apache

Все конфигурационные файлы WEB сервера Apache данной сборки расположены в каталоге /Apache24/conf . Главным конфигом является файл /Apache24/conf/httpd.conf .

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

Указание ServerRoot

Для примеров этой статьи директива ServerRoot будет иметь значение:

Define SRVROOT "Z:/WebDevelopment/Apache24" ServerRoot "${SRVROOT }"

здесь в httpd.conf задание ServerRoot выполнено не напрямую, а через определение переменной SRVROOT . Это удобный способ, т.к. позволяет задавать путь единожды в начале конфига, а далее он будет уже применяться автоматически в нужных местах конфигурации через эту переменную.

После установки ServerRoot директивы WEB сервер Apache может быть успешно запущен и будет отображать страницу по умолчанию с документацией по адресу localhost . Все остальные настройки конфигурации Apache уже являются дополнительными и зависят от ваших потребностей.

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

ШАГ 3 ручной запуск Apache

Основным исполняемым файлом WEB сервера Apache является файл Apache24\bin\httpd.exe . Соответственно, Apache можно запустить на исполнение как процесс, кликнув по файлу httpd.exe или выполнить команду запуска этого файла в консоли , что будет равнозначно.

Для того, что бы запустить Apache из командной строки на Windows , перейдите в проводнике в директорию с файлом Apache24\bin\httpd.exe и, зажав клавишу Shift , нажмите правую кнопку мыши и в контекстовом меню выберите пункт "Открыть окно команд ". Тогда командная строка Windows cmd.exe будет запущена уже в этом каталоге с бинарниками сервера и вам не нужно будет в команду включать полный путь до файла httpd.exe , а достаточно будет указать только сам файл с расширением. Если же вы запустил консоль в другом расположении, то включите, в приведенную ниже команду, полный путь к файлу httpd.exe .

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

- если вы находитесь в папке с исполняемым файлом apache httpd.exe :

>httpd.exe

или, если вы находитесь вне папки с исполняемым файлом apache httpd.exe , то укажите в команде полный путь исполняемому файлу apache :

>Z:\WebDevelopment\Apache24\bin\httpd.exe

Данная команда приведет к запуску WEB сервера Apache , при этом, консоль останется запущенной и в окне командной строки исчезнет приглашение на ввод команды в виде знака > . Если при выполнении этих команд командная строка закроется, значит apache не запустился по причине каких либо ошибок в его конфигурации, для этого смотрите основной файл лога apache .

Что бы запускать Apache вручную в окне командной строки из любого места файловой системы простой командой:

Т.е. без привязки к каталогу инсталяции Apache и при этом не указывать полный путь к файлу httpd.exe , то нужно прописать в системную переменную PATH путь до каталога с исполняемым файлом apache , т.е. добавить в переменную path строку вида:

;Z:\WebDevelopment\Apache24\bin

Как добавить в переменную path путь к папке с исполняемым файлом детально расписано в статье Установка PHP7 на Windows в разделе ШАГ 2 размещение PHP в Windows на примере PHP .

Если Apache запустился, то в диспетчере задач Windows появятся два активных процесса с именами файлов httpd.exe и описанием для них "Apache HTP Server ". Это,собственно, и есть работающий WEB сервер Apache . То, что мы видим два процесса httpd.exe - это нормально. Это Apache модуль Multi-Processing (MPM ) по умолчанию для операционных систем Windows . Он использует единый процесс управления, который запускает дочерний процесс, который, в свою очередь, создает потоки для обработки запросов.

Если же что то пошло не так и сервер не запускается, то читайте его журналы ошибок , которые расположены в каталоге: Apache24\logs

Для остановки Apache , запущенного вручную, вышеописанным способом, необходимо вернуться в консоль (в окно открытой командной строки) и нажать комбинацию клавиш Ctrl+C , и через несколько секунд сервер будет остановлен, о чем будет свидетельствовать отсутствие httpd.exe процессов в Диспетчере задач Windows и в окне командной строки снова появится курсор (знак > ) ожидания ввода команды. Иногда бывает, что командная строка "виснет", в этом случае повторно нажмите Ctrl+C и если курсор ввода команды не появится, то нажмите Enter . Если с использованием комбинаций клавиш Ctrl+C не получается остановить Apache в консоли, то просто закройте окно командной строки и сервер будет остановлен. Так же можно остановить Apache , выполнив завершение процессов httpd.exe в Диспетчере задач Windows , если предыдущие способы остановки не сработают.

htdocs\index.html

Теперь когда web сервер Apache запущен можно обратиться к его дефолтовый html странице, которая настроена в httpd.conf как хост по умолчанию и физически располагается в каталоге Apache24\htdocs\index.html .

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

Http://localhost

Если сервер работает, то вы увидите стартовую дефолтового страницу web сервера Apache от Apache Haus с надписью IT WORKS , что будет говорить о том, что все прошло успешно и Apache полноценно функционирует.

Для проверки HTTPS соединения обратитесь в браузере по адресу:

Https://localhost

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

ШАГ 4 инсталляция Apache как службы Windows

Приведенный выше способ запуска и остановки web сервера Apache прекрасно работает и им можно с успехом пользоваться, создав ярлык на исполняемый файл httpd.exe или написав .bat файлы с командами старта и остановки сервера. Однако более удобным вариантом будет использование Apache как системной службы Windows , что позволит запускать и останавливать Apache в автоматическом, полуавтоматическом режимах и вручную. Для этих действий можно будет использовать утилиту управления Apache службой , которая входит в данный дистрибутив Apache . ApacheMonitor.exe это маленькая утилита, представлявшая собой оконную программку, висящую в системном трее и позволяющую выполнять запуск и остановку службы Apache и контролировать ее состояние. Такой подход дает некоторое удобство в работе с web сервером Apache как системной службой Windows . Поэтому, далее будут рассмотрены необходимые действия для установки Apache как системной службы Windows.

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

>Z:\WebDevelopment\Apache24\bin\httpd help

или , находясь в каталоге с бинарниками Apache:

>httpd -h

и в консоли будет выведен краткий help по доступным командам Apache и их синтаксис:

>httpd -h Usage: httpd [-D name] [-d directory] [-f file] [-C "directive"] [-c "directive"] [-w] [-k start|restart|stop|shutdown] [-n service_name] [-k install|config|uninstall] [-n service_name] [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S] [-X] Options: -D name: define a name for use in directives -d directory: specify an alternate initial ServerRoot -f file: specify an alternate ServerConfigFile -C "directive" : process directive before reading config files -c "directive" : process directive after reading config files -n name: set service name and use its ServerConfigFile and ServerRoot -k start: tell Apache to start -k restart: tell running Apache to do a graceful restart -k stop|shutdown: tell running Apache to shutdown -k install: install an Apache service -k config: change startup Options of an Apache service -k uninstall: uninstall an Apache service -w: hold open the console window on error -e level: show startup errors of level (see LogLevel) -E file: log startup errors to file -v: show version number -V: show compile settings -h: list available command line options (this page) -l: list compiled in modules -L: list available configuration directives -t -D DUMP_VHOSTS: show parsed vhost settings -t -D DUMP_RUN_CFG: show parsed run settings -S: a synonym for -t -D DUMP_VHOSTS -D DUMP_RUN_CFG -t -D DUMP_MODULES: show all loaded modules -M: a synonym for -t -D DUMP_MODULES -t -D DUMP_INCLUDES: show all included configuration files -t: run syntax check for config files -T: start without DocumentRoot(s) check -X: debug mode (only one worker, do not detach)

Для инсталляции

>Z:\WebDevelopment\Apache24\bin\httpd.exe -k install

Для деинсталяции Apache как системной службы Windows нужно выполнить в консоли команду:

>Z:\WebDevelopment\Apache24\bin\httpd.exe -k uninstall

После установки Apache в качестве системной службы Windows вы можете настроить работу этой службы стандартным для всех служб Windows способом в Консоли управления Microsoft - оснастке services.msc запустив ее в cmd.exe командой:

>services.msc

или воспользовавшись другими стандартными способами:

  • Меню Пуск, в строке поиска наберите services.msc и нажмите клавишу Enter;
  • Нажмите сочетание клавиш Win+R , наберите services.msc и нажмите клавишу Enter;
  • Через оконный интерфейс по пути: Пуск->Панель управления->Администрирование->Службы

Установленная служба Apache будет иметь:

  • название: Apache2.4 ;
  • описание: Apache/2.4.23 (Win64) OpenSSL/1.0.2j ;
  • тип запуска: Автоматически .

Настройте необходимый вам вариант запуска службы стандартным способом.

Так же, для управления службой Apache2.4 вы можете воспользоваться описанной выше программой из дистрибутива сервера Apache24\bin\ApacheMonitor.exe . Для этого запустите указанный файл ApacheMonitor.exe и воспользуйтесь для запуска или остановки Apache кнопками в окне данной программы. В свернутом состоянии эта программа "висит" в системном трее в виде иконки состояния службы Apache и может быть от туда вызвана.

На этом Portable инсталляция Apache на Windows из zip архива закончена, далее можно приступать к индивидуальной настройке web сервера и организации виртуальных хостов.

Представляем вашему вниманию новый курс от команды The Codeby - "Тестирование Веб-Приложений на проникновение с нуля". Общая теория, подготовка рабочего окружения, пассивный фаззинг и фингерпринт, Активный фаззинг, Уязвимости, Пост-эксплуатация, Инструментальные средства, Social Engeneering и многое другое.


Good things should be shared.

Здесь инструкция для Windows. Если у вас Linux, то вам сюда " ".

Локальный веб-сервер — это очень полезный инструмент. Он нужен и тем кто разрабатывает Web-приложения, и тем, кто учиться работать с разнообразными скриптами, движками, а также тем, кто занимается тестированием на веб-проникновение. Существуют разные популярные сборки «всё в одном», которые включают Apache, PHP, MySQL и другие компоненты. Можно пользоваться и ими. Но самостоятельная установка сервера имеет ряд преимуществ:

  • возможность использовать самые новые компоненты, самые свежие версии Apache, PHP, MySQL, phpMyAdmin;
  • можно эти компоненты в день выхода новых версий — не нужно ждать, пока это сделают авторы больших пакетов;
  • отсутствие лишних, избыточных компонентов — мы устанавливаем только то, что нам нужно;
  • дополнительная безопасность — мы не знаем, какие изменения были внесены авторами разных сборок. При самостоятельной установке мы скачиваем только официальные файлы с официальных сайтов;
  • самостоятельная установка сервера — это важный шаг к его изучению, к пониманию глубинных процессов.

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

Если вы в точности будите следовать всем пунктам данной инструкции, то у вас обязательно всё заработает, независимо от вашей версии Windows!

Установка сервера включает в себя установку и настройку нескольких элементов:

  • сам веб-сервер (Apache);
  • скриптовый язык PHP;
  • система управления базами данных MySQL;
  • веб-интерфейс для администрирования СУБД MySQL phpMyAdmin.

Стадии установки:

1. Подготовительная стадия - скачивание Apache, PHP, MySQL, phpMyAdmin

Будем устанавливать самые новые версии программ, скаченные с официальных сайтов. Официальный сайт Apache — https://httpd.apache.org/ . Но данная версия работает только со старыми версиями PHP. Авторы PHP рекомендуют версию с сайта apachelounge.com . Поэтому переходим по ссылке https://www.apachelounge.com/download/

Вверху страницы представлено две версии Apache Win64 или Win32 . Если у вас 64-битная Windows, то выберите любую (это непринципиально и на работу никак не скажется. Только следуйте правилу, чтобы все версии компонентов сервера были одной битности). Я выбрал 64-битную версию.

Если предыдущие скаченные файлы различались битностью, то для phpMyAdmin такого понятия нет, т. к. он состоит из PHP скриптов.

Для работы PHP (а также Apache) необходимо установить Visual C++ Redistributable for Visual Studio 2012 с официального сайта Microsoft. Для этого нужно перейти по ссылке .

При попытке запуска, Apache пожалуется на отсутствие файла и запускаться откажется. Этот файл является частью Visual C++ Redistributable for Visual Studio 2015 , поэтому заблаговременно скачиваем его по ссылке (выбираем 32- или 64-битную версию).

Загружаемый файл будет иметь имя vc_redist.x64.exe.

Итог, мы имеем следующие файлы:

  • httpd-2.4.12-win64-VC11.zip
  • php-5.6.6-Win32-VC11-x64.zip
  • mysql-5.6.23-winx64.zip
  • phpMyAdmin-4.3.11-all-languages.zip
  • vcredist_x64.exe
  • vc_redist.x64.exe

Запустите и установите файлы vcredist_x64.exe и vc_redist.x64.exe - к ним мы возвращаться больше не будем.

2. Выбор структуры сервера.

Теперь всё готово, можно начинать. Несколько слов о структуре нашего сервера.

На диске C создаём каталог Server , в нём создаём каталоги bin (сюда будем устанавливать Apache, PHP, MySQL) и data (здесь будет наш сайт и база данных).

Казалось бы, для чего это нужно? На самом деле, это упрощает резервное копирование. Например, папка bin меняется очень редко и бэкапить её каждый день нет смысла. Напротив же, содержимое нашего сайта и баз данных может меняться ежедневно и имеет смысл делать резервную копию папки data часто. Когда мы , например, ставим новую версию PHP, то мы можем принудительно сделать копию bin и, в случае ошибок, без проблем откатиться на более старую версию.

Продолжим наши приготовления. В каталоге data создадим две папки:

  • DB (здесь будут храниться базы данных)
  • htdocs (здесь будут наши сайты)

3. Установка и настройка Apache 2.4

В каталог bin распаковываем файлы Apache (из архива httpd-2.4.12-win64-VC11.zip), точнее нас интересует только папка Apache24 .

После распаковки переходим в каталог c:ServerbinApache24conf и открываем файл httpd.conf любым текстовым редактором.

#ServerName www.example.com:80

ServerName localhost

ServerRoot "c:/Apache24"

ServerRoot "c:/Server/bin/Apache24"

DocumentRoot "c:/Apache24/htdocs"

DocumentRoot "c:/Server/data/htdocs/"

DirectoryIndex index.html

DirectoryIndex index.html index.php index.htm

Сохраняем и закрываем файл. Всё, настройка Apache завершена!

Откройте командную строку (это можно сделать нажав одновременно клавиши Win+X ). Выберите там Командная строка (администратор) :

И скопируйте туда:

C:ServerbinApache24binhttpd.exe -k install

И нажмите Enter. У меня встрепенулся файервол:

Нажмите разрешить, если у вас появится это же окошко.

Теперь вводим в командную строку:

C:ServerbinApache24binhttpd.exe -k start

И нажмите Enter.

В качестве имя пользователя вводим root . Поле пароля оставляем пустым. Если всё сделано правильно, то всё должно выглядеть так:

7. Использование сервера и бэкап данных.

В каталоге c:Serverdatahtdocs создавайте папки и файлы, например:

c:Serverdatahtdocstestajax.php - этот файл, соответственно, будет доступен по адресу https://localhost/test/ajax.php и т.д.

Для создания полного бэкапа всех сайтов и баз данных достаточно скопировать каталог data .

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


Подготовка папок

Я очень не люблю, чтобы у меня все валялось, где попало, так что для начала создадим папки, где у нас будут располагаться программы и сайты.
Создадим на диске «C:\» (или где вам удобней) папку «Server»:
C:\Server\
В ней создадим 2 папки:
C:\Server\web – это папка в которой у нас будут лежать программы
C:\Server\domains – а в этой папке будут лежать наши сайты
Итак, в папке \web\ мы создадим 3 папки для apache, php, mysql:
C:\Server\web\apache\
C:\Server\web\php\
C:\Server\web\mysql\
Далее перейдем в папку domains и создадим папку \localhost\
C:\Server\domains\localhost\
Внутри папки у нас будет 2 подпапки: public_html – для файлов сайта; logs – для текстовых файлов, в которых записывается «кто» получал доступ к сайту и какие ошибки в работе сайта появлялись.
C:\Server\domains\localhost\public_html\
C:\Server\domains\localhost\logs\
На этом структура папок заканчивается, переходим к настройке Apache.

Настройка Apache

Для установки Apache нам понадобиться сам Apache (Кэп). Так как у нас Windows 8.1 x64, то устанавливать будем Apache x64.
Для скачивания перейдем по ссылке:
www.apachelounge.com/download/win64
и скачиваем «httpd-2.4.6-win64.zip». Так же нам понадобиться для нормальной работы «Распространяемый пакет Microsoft Visual C++ 2010 (x64)». Для этого скачаем его по этой ссылке:
www.microsoft.com/ru-ru/download/details.aspx?id=14632
и устанавливаем.
После того как скачался наш архив с Apache, откроем его. Открыв архив, мы увидим папку «Apache24», зайдем в нее. Появиться множество папок и файлов программы, все распаковываем в заготовленную ранее папку:
C:\Server\web\apache\
Должно получиться так:
C:\Server\web\apache\bin\
C:\Server\web\apache\cgi-bin\
C:\Server\web\apache\conf\
C:\Server\web\apache\error\
C:\Server\web\apache\htdocs\
C:\Server\web\apache\icons\
C:\Server\web\apache\include\
C:\Server\web\apache\lib\
C:\Server\web\apache\logs\
C:\Server\web\apache\manual\
C:\Server\web\apache\modules\
Папки, такие как \cgi-bin\, \htdocs\, \icons\ и \manual\ нам не нужны – можете их удалить.
Перейдем в папку:
C:\Server\web\apache\conf\
И откроем файл конфигурации Apache – «httpd.conf» любым текстовым редактором. В этом файле каждая строка содержит директивы для настройки Apache, а строки, начинающиеся со знака # (решетка) – комментарий и пояснение. Приступим к настройке:

Файл конфигурации Apache

# директива Apache
ServerRoot “C:/Server/web/apache”
# Слушаем на локальном IP порт (80 по стандарту)
Listen 127.0.0.1:80
# далее подключим библиотеки расширений для Apache
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule php5_module "C:/Server/web/php/php5apache2_4.dll"
# указываем Apache, что файлы с расширением php, нужно воспринимать как php-скрипты
AddHandler application/x-httpd-php .php
# укажем расположение файла настроек php
PHPIniDir “C:/Server/web/php”
# изменим имя сервера
ServerName 127.0.0.1:80
# изменим доступ к директории

Options Includes Indexes FollowSymLinks
AllowOverride All
Allow from all


# директория с нашими сайтами
DocumentRoot “C:/Server/domains”
# индексные файлы, по приоритету.

DirectoryIndex index.php index.html index.htm index.shtml

# папка для log-файлов
ErrorLog “C:/Server/domains/logs/error.log”
CustomLog “C:/Server/domains/logs/access.log”
# добавим alias для phpMyAdmin, и поправим alias для cgi

Alias /pma “C:/Server/domains/phpMyAdmin”
ScriptAlias /cgi-bin/ “C:/Server/web/apache/cgi-bin/”

# правим путь для cgi

AllowOverride None
Options None
Require all granted

# типы файлов


AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

# Другие конфиги:



BrowserMatch "MSIE 10.0;" bad_DNT


RequestHeader unset DNT env=bad_DNT

На этом заканчивается настройка httpd.conf.
В конфигурационном файле Apache httpd.conf были подключены дополнительные конфиги:
Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-vhosts.conf
Include conf/extra/httpd-manual.conf
Include conf/extra/httpd-default.conf
Откроем файл «C:\Server\web\apache\conf\extra\httpd-mpm.conf» и быстро пробежимся по нему.
# указываем, где у нас будет храниться pid-файл:

PidFile “C:/Server/web/apache/logs/httpd.pid”

Остальные параметры оставляем без изменений. Откроем файл «httpd-autoindex.conf», изменим там только строки с путем:
Alias /icons/ "c:/Server/web/apache/icons/"

Options Indexes MultiViews
AllowOverride None
Require all granted

Файл хостов Apache

# на примере доменная localhost

DocumentRoot "C:/Server/domains/localhost/public_html"
ServerName localhost
ErrorLog "C:/Server/domains/localhost/logs/error.log"
CustomLog "C:/Server/domains/localhost/logs/access.log" common


# добавим для будущего phpMyAdmin (не забываем создать папку)

DocumentRoot "C:/Server/domains/phpmyadmin/public_html"
ServerName localhost
ErrorLog "C:/Server/domains/phpmyadmin/logs/error.log"
CustomLog "C:/Server/domains/phpmyadmin/logs/access.log" common

На этом редактирование файла заканчивается. Далее в оставшихся файлах правим только пути:
Файл «httpd-manual.conf»:
AliasMatch ^/manual(?:/(?:da|de|en|es|fr|ja|ko|pt-br|ru|tr|zh-cn))?(/.*)?$ "C:/Server/web/apache/manual$1"

В файле «httpd-default.conf» никаких изменений не производиться. На этом настройка конфигурации Apache завершается.

Настройка PHP

Раз у нас Windows 8.1 x64 и Apache x64 установлен и настроен, то и php должно быть x64.
Идем на сайт:

и скачиваем архив php последней версии. Нам нужен php как модуль, т.е. для этого скачиваем Thread Safe. После того как архив скачался, открываем его и переносим содержимое в папку «C:\Server\web\php\». Создадим две пустые папки «tmp» и «upload». Далее в этой папке ищем файл «php.ini-development» и переименовываем его в «php.ini». Открываем файл в текстовом редакторе и изменяем директивы (комментирования строк в файле начинается с точки с запятой).

Настройка php.ini

short_open_tag = On
zlib.output_compression = On
post_max_size = 64M
include_path = ".;С:\Server\web\php\includes"
extension_dir = "C:/Server/web/php/ext"
upload_tmp_dir = "C:/Server/web/php/upload"
upload_max_filesize = 64M
extension=php_bz2.dll
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_sockets.dll
extension=php_sqlite3.dll
; в секции указываем временную зону нашего сервера (http://php.net/date.timezone)
date.timezone = "Asia/Yekaterinburg"
session.save_path = "С:/Server/web/php/tmp/"


На этом настройка php заканчивается.

Настройка MySQL

Ставим MySQL x64 как сокет под windows. Скачиваем архив с последней версией MySQL x64:
dev.mysql.com/downloads/mysql
В низу страницы находим Windows (x86, 64-bit), ZIP Archive и жмем на кнопку «Download». Вам перекинет на страницу регистрации на сайте. Нажимаем внизу страницы «No thanks, just start my download», запуститься скачивание архива MySQL. После того как скачался архив откроем его и перенесем все содержимое папки в «C:\Server\web\mysql\»
Теперь открываем файл настроек MySQL – «C:\Server\web\mysql\my-default.ini». Удаляем все его содержимое и вносим туда свои данные.
port=3306
host=127.0.0.1
port=3306
bind-address=127.0.0.1
enable-named-pipe
basedir="C:/Server/web/mysql/"
datadir="C:/Server/web/mysql/data/"
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Вот и всё. В конфигурационном файле мы указали, что скрипты могут обращаться к серверу и по локальному IP, и по сокет-соединению.
Осталось дело за малым. Добавим в системную переменную «PATH» пути к Apache и MySQL, для этого:
  1. Перетащите курсор мыши в правый нижний угол экрана
  2. Щелкните на значке «Поиск» и введите: панель управления
  3. Выберите System (Система)-> Advanced (Дополнительные параметры системы)
  4. Выберите Environment Variables (Переменные среды), в меню System Variables (Системные переменные), найдите переменную PATH и щелкните на ней.
  5. Пропишите пути к Apache и MySQL:
;C:\Server\web\apache\bin;C:\Server\web\mysql\bin
Далее установим службы Apache и MySQL. Для этого воспользуемся сочетанием клавиш «Win+X», появиться выпадающее меню в левом нижнем углу. Выберем «Командная строка (администратор)».
В командной строке вводим, для установки Apache:
httpd –k install
для установки MySQL:
mysqld.exe --install MySQL --defaults-file=”C:\Server\web\mysql\my-default.ini”
Установим пароль для MySQL-пользователя. Для этого запустим службу MySQL командой:
NET start MySQL
После того как служба запустилась, установим пароль:
mysqladmin –u root password ВашПароль
В файл «httpd-vhosts.conf» мы прописали два сайта, для того чтобы браузер мог их увидеть, названия сайтов нужно добавить в файла «hosts». Перейдем в папку:
C:\Windows\System32\Drivers\etc\
откроем файл «hosts» любым текстовым редактором (запустить от имени администратора) и в конец файла добавим:
127.0.0.1 localhost
127.0.0.1 phpmyadmin
Сохраняем файл.
Для удобства запуска и остановки служб Apache и MySQL создадим файлы start-server.bat и stop-server.bat.
Для этого перейдем в папку «C:\Server\» и создадим два этих файла.
Содержание «start-server.bat»:
@echo off
NET start Apache2.4
NET start MySQL
Содержание «stop-server.bat»:
@echo off
NET stop Apache2.4
NET stop MySQL
Настройка Apache, PHP и MySQL на этом закончена. Для того чтобы протестировать сервер, давайте в папке «C:\Server\domains\localhost\public_html» создадим файл «index.php» с содержимым:

Далее запустим наш сервер, для этого запустите «start-server.bat» от имени администратора. После того как сервер запустился, откройте браузер и введите в адресной строке «localhost».
Должна отобразиться страница с информацией о PHP.