Настройка apache на windows server 2008

Обновлено: 07.07.2024

Этичный хакинг и тестирование на проникновение, информационная безопасность

Подключение виртуальных хостов Apache в Windows

Виртуальные хосты могут быть привязаны к имени хоста (например, study.loc), к IP (например, 127.0.0.3) и к порту (*:81). Второй и третий способ хороши тем, что нам не придётся решать вопрос о DNS преобразованиях имени нашего виртуального хоста (это, обычно, достигается изменением системного файла C:\Windows\System32\drivers\etc\hosts либо использованием личного DNS сервера с соответствующими записями).

Рассмотрим все три способа. Но начнём с небольшой подготовки. Создадим каталог, в котором будем размещать наши виртуальные хосты. Например, C:\Server\data\htdocs\virthosts\. А в этом каталоге создадим три новых папки: host1, host2, host3. В каждой из них создайте по индексному файлу (index.html) с любым содержанием, который позволил бы идентифицировать, что вы попали в нужный хост. Я сделаю следующие записи в соответствующих индексных файлах хостов, для первого хоста:

Теперь приступим к настройки виртуальных хостов.

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

Для виртуальных хостов, которые привязаны к IP, требуются несколько IP. Тем не менее, на своём локальном сервере вы можете проделать этот фокус, поскольку в IPv4, в 127.0.0.1 также отражается любой адрес в пределах от 127.0.0.0 до 127.255.255.255.

Попробуйте набрать в браузере 127.0.0.1, а затем попробуйте 127.0.0.2, 127.0.0.3, 127.0.0.4, 127.0.0.5 и т.д. Как видите, IP у нас много, и к каждому из них можно привязать виртуальных хост.

Перезапустите веб-сервер (делайте перезапуск после каждого изменения файла настройки):

А теперь откройте 127.0.0.2:

01

При этом на другие IP 127.0.0.*, а также на localhost наши настройки влияние не оказывают.

Виртуальные хосты на основе портов (разные сайты на разных портах)

02

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

Следующий способ требует редактирование файла C:\Windows\System32\drivers\etc\hosts (либо внесение записи в ваш собственный DNS сервер). Придумайте любое имя хоста, желательно, не совпадающее с реальным. Примеры supersite, study.loc, video.ofme. Я возьму в качестве примера study.loc. Откройте файл C:\Windows\System32\drivers\etc\hosts и добавьте туда:

03

Аналогично настраиваются и субдомены (dir1.study.loc, dir2.study.loc, dir3.localhost и т.п.).

Автоматическое создание виртуальных хостов / субдоменов

А также, если вы не сделали этого ранее, строку:

Теперь любая папка, созданная в C:\Server\data\htdocs\virthosts\ будет доступна по адресу вида

Обратите внимание на обозначение «%1» - оно значит первую часть имени, запрошенного виртуального хоста. То есть для запрошенного хоста super.localhost символы «%1» будут обозначать «super».

Вместо «%1» вы можете указать «%0» - это означает полное имя, то есть для запрошенного хоста super.localhost символы «%0» будут обозначать super.localhost и, следовательно, будет искаться папка super.localhost, а не super (как это происходит при использовании %1).

Помните, имена хостов вида *.localhost автоматически преобразуются в локальные IP адреса. Но если вы хотите использовать другие имена хостов, то укажите их в файле C:\Windows\System32\drivers\etc\hosts, чтобы компьютер понимал, какое имя какому IP адресу соответствует.

Обратите внимание, что теперь не учитывается .localhost. На самом деле, вы можете использовать и .localhost, просто создав папки «host1.localhost», «host2.localhost» и так далее.

Как сделать резервную копию БД MySQL в Windows?

Резервную копию можно создать в графическом веб-интерфейсе в phpMyAdmin. Если вы хотите сделать бэкап сразу всех баз данных, то перейдите на главную страницу phpMyAdmin, оттуда перейдите во вкладку Экспорт. Далее всё достаточно просто, в том числе и с дополнительными опциями.

Аналогично при бэкапе отдельных баз данных: перейдите на страницу интересующей БД, а далее в Экспорт.

Если вы по каким-то причинам хотите сделать бэкап базы данных MySQL из командной строки в Windows, то для этого понадобиться утилита mysqldump.exe, она поставляется вместе с MySQL и расположена в каталоге C:\Server\bin\mysql-8.0\bin\.

Для её использования откройте командную строку и перетащите туда программу. Программу можно использовать с разнообразными опциями:

Если вы хотите сделать резервную копию всех баз данных в один файл, то выполните:

Кстати, файл нужно искать в той папке, которую вы видите в приглашении командной строки.

Для того, чтобы сделать резервную копию только одной базы данных (например, rsyslog):

Чтобы сделать резервную копию нескольких баз данных используйте опцию --databases, а после него через пробел перечислите желаемые для бэкапа базы данных:

Чтобы сделать резервную копию только одной таблицы (wp_posts) из базы данных (wordpress):

Для того, чтобы сделать резервную копию нескольких таблиц, перечислите их через пробел после названия БД:

Краткая характеристика основных директив конфигурационных файлов Apache

Настройка ограничения доступа к папкам сервера

Если вы хотите использовать SSL в веб-сервере Apache под Windows, то вам необходимы три файла: *.key, *.csr и *.crt. Если вы купили валидный SSL сертификат для вашего сайта, то эти файлы вам должны прислать после покупки. Их может быть больше – среди них могут быть промежуточные сертификаты.

Предполагается, что вы ставили веб-сервер по этой инструкции – иначе замените абсолютные пути на свои собственные.

Откройте командную строку Windows (WIN + x, далее выберите «Командная строка»). В командной строке введите команды:

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

Двухбуквенное имя страны (двухбуквенный код)

Название штата или провинции/области (полное имя)

Название населённого пункта (например, города)

Название организации (т.е. компании).

Подразделение организации (т.е. отдел)

Общее имя (например, FQDN сервера или ВАШЕ имя). Можете ввести localhost.

Пожалуйста, введите следующие «дополнительные» атрибуты для отправки с вашим запросом сертификата

  • Пароль запроса:
  • Опциональное имя компании:

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

В результате в каталоге C:\Server\bin\Apache24\bin\ должны появиться три новых файла:

  • localhost.key
  • localhost.csr
  • localhost.crt

Из них нам понадобятся только два:

При использовании сертификатов для настройки реального веб-сайта, удобнее создать виртуальный хост с примерно следующими настройками:

Для настройки использования SSL на локальном веб-сервере Apache в Windows следуйте инструкции ниже.

В каталоге C:\Server\ создайте новую папку certs и переместите туда файлы localhost.key и localhost.crt.

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

  • DocumentRoot — укажите путь до сайтов на сервере
  • ServerName — укажите имя вашего хоста, если то не локалхост

После этого сохраните изменения, закройте файл и перезапустите веб-сервер.


К самоподписанным сертификатам нет доверия и эту ошибку нельзя убрать без добавления таких сертификатов в доверенные. Для перехода нажмите «Всё равно продолжить».

Настоящие валидные сертификаты для своих сайтов (в том числе бесплатно на любое количество времени), вы сможете получить здесь.

Как сделать домашний хостинг за 15 минут с нуля. Установка и настройка локального сервера. Apache + PHP + MySql + windows 7-2008r2

Как сделать домашний хостинг за 15 минут с нуля. Установка и настройка локального сервера. Apache + PHP + MySql + windows 7-2008r2

Всем привет сегодня расскажу как сделать домашний хостинг за 15 минут с нуля. Установка и настройка локального сервера. Apache + PHP + MySql + windows 7/Windows server 2008r2.

Список программ.

Все программы бесплатны и скачаны с официальных сайтов:

Не скачивайте сверхновые программы с пометкой Альфа (Alpha), Бета (Beta) и т.д. - это не стабильные версии которые могут содержать ошибки. Скачивайте только стабильные (Stable) версии.

программы для работы с базой данных MySql:

Принцип работы сервера:

Сервер - это компьютер на котором лежат файлы сайта. На нем запущена и постоянно работает специальная программа Apache. Если через браузер обратиться к этому серверу (послать запрос на 80 порт), Apache выдаст обратно HTML и графические файлы лежащие на сервере. Браузер получив обратно эту информацию сформирует из них на экране привычную нам страницу сайта.
Это принцип.

Для надежности и большей совместимости реальные сервера у хостинговых компаний обычно делают на связках Unix + Apache (самая распространенная в мире связка) или на Windows Server 200X + Internet Information Server (IIS). Для экспериментов и тестирования сайтов вполне подойдет Windows 7, Vista или XP + Apache.

Ниже рассказывается как создать локальный (не видимый в интернете) виртуальный сервер для тестирования сайтов, скриптов и т.д.

Настроить видимость в интернете, т.е. сделать свой реальный хостинг можно, но опасно, ибо велик шанс, что будет много "дыр" для взлома.
* посчитайте сколько стоит за год выделенный IP адрес
* посчитайте сколько стоит за год электричество для постоянно работающего компьютера
* посчитайте стоимость замены выходящего из строя железа (год в включеном состоянии не каждая железка выдержит)
* уверены, что интернет у Вас никогда не пропадает и скорости отдачи хватит для всех посетителей?
* как будете делать резервные копии сервера, где хранить? При сбое или взломе как быстро Вы сможете все восстановить?
Ответив на вопросы выше подумайте, может надежнее, проще и дешевле купить хостинг и не мучиться.

1) Cоздаем папки

Это папки для двух сайтов и их мы будем указывать в настройках Apache. Сайтов может быть много. Папки нужно создавать заранее. Если хотя бы одна папка или подпапка указанная в настройках Apache физически не существует, то Apache не запустится.

Общая папка для всех виртуальных сайтов:
c:/work/
Название может быть любое, не обязательно work.
Место положение любое, не обязательно диск c:

папка
c:/work/_/sendmail/
не обязательна. Нужна для работы "заглушки" отправки e-mail.

2) Устанавливаем Apache

Apache - это программа, которая принимает запросы от браузера (Internet Explorer, FireFox, Opera . ) и выдает ему обратно HTML, картинки, результаты работы скриптов и т.д. (выдает страницы сайта). Запущена она один раз и работает постоянно. Значок запущенной программы будет внизу, справа экрана.

----------
Чтобы Apache принимал запросы только с локального компьютера, указываем его неизменный IP адрес и порт: 127.0.0.1:80
Т.е. скачать или запустить что-то на вашем хостинге можете только Вы.

Заменяем
Listen 80
на
Listen 127.0.0.1:80

----------
Для того, что бы можно было использовать файлы .htaccess
После кода:

Изменяем
AllowOverride None
на
AllowOverride All

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

Заменяем
DirectoryIndex index.html
на
DirectoryIndex index.html index.htm index.php

----------
Указываем путь файла ошибок в удобное нам место:
ErrorLog "c:/work/_/apache_error.log"

----------
Даем доступ к папке "work" и создаем настройки.
После кода:

<Directory "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

<Directory "C:/work">
AllowOverride All
Options Indexes FollowSymLinks Includes
Order allow,deny
Allow from all
</Directory>

Indexes - возвращает клиенту листинг каталога, если в нем нет индексных файлов
FollowSymLinks - Позволяет использовать символические ссылки (нужно для работы mod_rewrite)
Includes - Разрешает выполнение SSI директив в файлах

----------
Указываем расширения файлов для SSI
После кода :

AddType text/html .shtml .html. .htm
AddOutputFilter INCLUDES .shtml .html .htm

Даем понять Apache, что:
Есть виртуальный хост, т.е. сайт.
Его файлы лежат здесь "DocumentRoot"
Показывать именно этот сайт если запрашивают домен "ServerName" или "ServerAlias"
Логи писать сюда "ErrorLog" и сюда "CustomLog"

Для этого удаляем старые записи
<virtualhost>
.
</virtualhost>
и добавляем новые:

<VirtualHost *:80>
DocumentRoot c:/work/bebebe/www
ServerName bebebe
ErrorLog c:/work/bebebe/error.log
CustomLog c:/work/bebebe/access.log common
</VirtualHost>

3) Устанавливаем PHP

PHP - это популярный язык программирования применяемый для создания сайтов.

В установке выбираем все модули, кроме этих:
Oracle (10)
PDO - Oracle10g
PDO - Oracle8i\Oracle9i
PDO - SQLite (External Driver)
Pspell
Sybase
т.к. для них нет файлов-билиотек (.dll) и это приведет к ошибке.

Настройки PHP в файле:
C:\Program Files (x86)\PHP\php.ini

позволит выполнять код PHP в контейнере <? . ?>
по умолчанию кодом PHP считается все в контейнере <?php . ?>
short_open_tag = On

максимальное время выполнения программы в секундах
(на реальных хостингах обычно 30)
max_execution_time = 3600

максимальное время получения данных (например загрузки файла) в секундах
(на реальных хостингах обычно 60)
max_input_time = 3600

максимальный объем памяти который может занять Ваш PHP скрипт
(на реальных хостингах обычно 32М)
memory_limit = 256M

выводить на экран ошибки PHP
(на реальных хостингах всегда OFF в целях безопасности)
display_errors = On

выводить на экран ошибки в момент запуска PHP
display_startup_errors = On

максимальный объем, который можно передать PHP скрипту методом POST
(на реальных хостингах обычно 4М)
post_max_size = 1000M

максимальный объем файла, который можно передать PHP скрипту
(на реальных хостингах обычно 2М)
upload_max_filesize = 1000M

Заменяем пути папок для временных файлов, сессий и файла ошибок:
upload_tmp_dir="C:\work\_\php_temp"
session.save_path="C:\work\_\php_session"
error_log="C:\work\_\php-errors.log"

Требуется установка времени сервера иначе PHP постоянно будет выдавать предупреждения
изменяем
;date.timezone =
например, на
date.timezone ='Europe/Moscow'

Что бы работала "заглушка" для отправки e-mail после строки
;sendmail_path =
заменяем
sendmail_path = php.exe c:\work\_\sendmail\sendmail.php
тогда при выполнении функции PHP - mail(); письмо будет сохранено в виде файла в папке
c:\work\_\sendmail\
(куда сохранять письма прописано в самом скрипте sendmail.php)

Если Apache не запустился то закоментируйте следующие библиотеки в php.ini
;extension=php_pdo_pgsql.dll
;extension=php_pgsql.dll
;extension=php_sybase_ct.dll
;extension=php_oci8_11g.dll
;extension=php_oci8.dll
;extension=php_intl.dll
_________________________________________________________________________________

4) Устанавливаем ImageMagick

ImageMagick - программа для работы с изображениями. Схожа со стандартной библиотекой PHP GD2, но более профессиональная и главное выдает картинки с лучшим качеством, что заметно не вооруженным глазом (после обработки GD2 картинки слегка мутноваты и это не лечится).

После установки самой программы, копируем в папку с модулями, модуль для ImageMagick
C:/Program Files (x86)/PHP/ext/php_imagick_dyn-Q16.dll
В конце php.ini добавляем строчку подключения модуля:
extension=php_imagick_dyn-Q16.dll
Может требовать перезагрузки компьютера (перезагрузим позже)

5) Устанавливаем MySQL

MySQL - это база данных. Т.к. далеко не всю информацию удобно хранить в файлах, наличие базы данных очень часто является необходимостью. При установке обязательно поставьте галочку Include Bin Directory in Windows PATH иначе PHP не сможет найти нужные ему файлы mysql.

Кодировки MySQL это отдельный рассказ, т.к. нюансов множество.
При установке MySQL желательно указать именно UTF-8 (инсталлятор так и рекомендует сделать). Это универсальная, многобайтовая кодировка.

Обычно возникает путаница с кодировками: ошибки при записи в базу данных, читаются иероглифы, появляются вопросики вместо букв и т.д. MySql имеет массу настроек кодировок. Важные для PHP:

character_set_client = кодировка данных отправляемых от PHP
character_set_connection = кодировка, в которую преобразуется информация пришедшая от PHP, перед выполнением запроса на сервере
character_set_results = кодировка данных отправляемых к PHP
collation_connection = кодировка в которой производится сопоставление в базе данных. Используется для сортировки и выборки.

В помощь: если база данных в UTF-8, а на сайте работаете в кодировке windows-1251, то после подключения к базе данных надо выполнить запрос:
SET NAMES cp1251
который равносилен этим трём:
SET character_set_client = cp1251
SET character_set_results = cp1251
SET character_set_connection = cp1251

Настройки MySQL лежат в файле:
c:\Program Files (x86)\MySQL\MySQL Server 5.1\my.ini

Если сам MySQL использует UTF-8 по умолчанию, то лезть в файл настроек как правило не нужно и все проблемы с кодировками можно решить с помощью MySQL менеджера (например программы HeidiSQL) и запросов SQL.

6) Настройка Windows

Что бы при наборе в браузере определенных сайтов браузер искал их не в интернете, а на локальном компьютере,
в файл:
C:\WINDOWS\system32\drivers\etc\hosts
добавляем:

Запись "127.0.0.1 localhost" нужна для того, что бы можно было подключаться к MySQL из PHP указывая не IP адрес 127.0.0.1, а зарезервированное имя "localhost". Так правильнее и "localhost" часто используется на реальных хостингах.

7) Перезапуск Apache

Для Windows Vista и Windows7:
остановить и снова запустить Apache

Для Windows XP:
сразу перезапустить Apache не получится - сначала надо обязательно перезагрузить компьютер
(перезагрузка закрепляет значения, автоматически сделанные Apache, PHP и MySQL, в переменной Windows - PATH)

______________________________________________________________________________
Настройка программы phpMyAdmin

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

Распаковываем все файлы в какую-нибудь папку на сайте, например в "c:/work/bebebe/www/pma/"
В корне переименовать файл
config.sample.inc.php
в
config.inc.php
и редактируем всего одну строчку (надо указать любой код, например "xxx"):
$cfg['blowfish_secret']='xxx';
После чего запускаем phpMyAdmin, набрав в браузере:
bebebe/pma
Вводим логин и пароль которые указывали при установке MySQL

Остальные настройки менять НЕ нужно и по умолчанию они должны содержать:
$cfg['Servers'][$i]['verbose'] = '';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['nopassword'] = true;

Вот так вот просто сделать домашний хостинг за 15 минут с нуля. Установка и настройка локального сервера. Apache + PHP + MySql + windows 7/2008r2. Тоже самое можно сделать с помощью Denwer.

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.
  • Больше вариантов смотри в статье:"Как организовать среду для web разработки"

Использовать виртуальную машину с 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 в разделе Настройка Apache2.4 для работы с PHP .

Portable Apache на Windows

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

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

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

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

ШАГ 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 имеет следующую структуру каталогов:

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

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

Указание ServerRoot

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

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

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

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

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

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

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

;Z:\WebDevelopment\Apache24\bin

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

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

htdocs\index.html

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

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

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


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

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

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

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

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

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

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

  • Меню Пуск, в строке поиска наберите 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 и может быть от туда вызвана.

Скриншот запущенной программы ApacheMonitor.exe

Скриншот запущенной программы ApacheMonitor.exe

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

Смотри также:

Еще, дополнительно, о настройке можно почитать на сайте Apache: CUSTOMIZING APACHE FOR WINDOWS .

Звезда активна
Звезда активна
Звезда активна
Звезда активна
Звезда активна

Установка веб-сервера Apache для 1С

Если вам необходим доступ в 1С из браузера в сети Интернет либо запуск в режиме тонкого клиента (что не требует лицензии 1С на рабочем месте пользователя) можно установить веб-сервер на компьютер или сервер с базой по этой инструкции.

Дистрибутив установки проверен на Windows 7 64x и на Windows Server 2008 R2. Для начала скачиваем и распаковываем в папку C:\Apache24\ архив:

Ставим Visual Studio:

Запускаем командную строку для установки службы:

Запускаем командную строку для установки службы Apache

Вводим команду для установки службы Apache:

cd C:\Apache24\bin - переходим в папку с файлом

Если появилась ошибка (или похожая с крякозябрами):

(OS 10048) Only one usage of each socket address (protocol/network address/port) is normally permitted. : make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down

Проверяем занят ли порт в той же командной строке:

netstat -aon | findstr 0.0:80

Если порт чем то занят будет отображено статус LISTENING по протоколу TCP:

Если порт при установке Apache чем то занят будет отображено статус LISTENING по протоколу TCP

Выясняем чем занят, пишем команду:

for /f "tokens=1,2,3,4,5*" %i in ('netstat -aon ^| findstr ":80" ^| findstr /i listening') do echo %j %l & @tasklist | findstr %m

Если порт при установке Apache чем то занят проверяем чем

Как правило этот порт занят скайпом. В настройках скайп Дополнительно => Соединение снимаем галочку "Для дополнительных входящих соединений следует использовать порты 80 и 443":

"В

Перезапустить скайп для вступления в силу изменений

Перезапускаем скайп и пробуем установить снова через ту же командную строку:

Служба Apache успешно установлена

На Windows Server 2008 R2 появилась вот такая ошибка при установке, но служба Apache была установлена:

На Windows Server 2008 R2 появилась вот такая ошибка при установке, но служба Apache была установлена

Теперь добавим монитор служб Apache (C:\Apache24\bin\ApacheMonitor.exe) в автозагрузку Windows и запустим его:

Добавим монитор служб Apache в автозагрузку Windows

Открываем Apache Service Monitor в трее, видим зеленый значок рядом с названием Apache 2.4 и проверяем работу в браузере. Переходим по адресу localhost и видим надпись It works!:

Переходим по адресу localhost и видим надпись It works! Apache успешно установлен

В Windows Server 2008 R2 значок у меня был красный, это означает, что служба не запустилась. В моем случае помогла остановка службы SQL Server Reporting Services (от установленного Microsoft SQL Server 2008 R2) и запуск службы Apache через монитор:

Остановка службы SQL Server Reporting Services (от установленного Microsoft SQL Server 2008 R2) для запуска службы Apache

После перезагрузки служба запустилась корректно.

файл C:\Apache24\conf\httpd.conf поменять в нем строку на Listen ваш статический ip:80

Также нужно зайти в Брандмауэр => Дополнительные параметры => Правила для входящих подключений и создать правило для порта 80 по протоколу TCP "Разрешить подключение" для всех профилей.

Теперь можно публиковать базы 1С на веб-сервере, запуск из окна браузера 1С Управление торговлей 11 будет выглядеть так:

Читайте также: