- Установка Apache под Windows
- Проблема установки Apache под Windows
- Первичная установка
- Оптимизация размещения файловых областей
- Настройка на новую файловую структуру
- Запуск сервера и проверка настройки
- Дополнительная настройка
- Заметки сисадмина о интересных вещах из мира IT, инструкции и рецензии. Настраиваем Компьютеры/Сервера/1С/SIP-телефонию в Москве
- Установка сервера Apache на Windows
- Управление Apache из командной строки
- Сам себе хостмастер или установка Apache на платформе Windows
- Установка пакета обновлений библиотек Visual C++
- Установка и настройка сервера Apache 2.4
- Установка PHP 5.4
- Настройка php.ini
- Установка и настройка MySQL
Установка Apache под Windows
(о параметрической настройке Apache 2.4.34 можно прочитать в другой статье)
Проблема установки Apache под Windows
Основная проблема установки Web-сервера Apache под Windows заключается в том, что после первичной установки дистрибутива весь пакет (исполняемые программы, конфигурационные файлы, файлы журналов работы сервера и файловая область для размещения Web-страниц) размещается в одном месте. Это мешает нормальной эксплуатации продукта по следующим причинам:
- Разграничение прав доступа. Исполняемые файлы должны оставаться неизменными, конфигурационными файлами управляет администратор Web-сервера, а доступ к файловой области Web-страниц должны иметь разработчики и администраторы сайта. Права доступа к папке «Program Files» настроены в предположении, что в ней хранятся исполняемые модули программных пакетов, модификация которых не требуется.
- Захламление системных папок. Папка «Program Files» операционной системы Windows изначально предназначена для размещения только исполняемых файлов. Она может находиться на отдельном томе, размер которого выбирается системным администратором в предположении о его относительном постоянстве. Уж точно никто не ожидает, что в этой папке будут храниться пользовательские данные, галереи рисунков и файловый архив сайта.
Поэтому установка Apache под Windows должна проводиться в два этапа:
- Первичная установка программного пакета в выбранную папку.
- Оптимизация размещения файловых областей web-сервера и соответствующее изменение его конфигурации.
При модификации конфигурационных файлов Apache нужно постоянно помнить, что в качестве разделителя путей к файлам и папкам должен использоваться символ «прямой слеш», как в операционных системах Unix и Linux, а не «обратный слеш», как в Windows.
Первичная установка
Для установки потребуется как минимум операционная система Windows XP SP3 (для этой устаревшей версии понадобится Web-сервер, сборка которого выполнена компилятором VC9 или VC10). Современные сборки Apache операционную систему Windows 2000 не поддерживают.
Дистрибутивный пакет Apache для Windows можно загрузить с сайта одного из двух «официальных» поставщиков: Apache Lounge (только версия 2.4, с документацией) или Apache Haus (версии 2.4 и 2.2, без документации). Он представляет собой ZIP-архив, который, по замыслу поставщиков дистрибутива, нужно распаковать в корень диска C:.
Поскольку мы всё равно будем проводить оптимизацию размещения файловой структуры Web-сервера, первичную установку нужно выполнить в ту папку, которая предназначена для размещения исполняемых модулей web-сервера (exe-, lib-, so- файлов и прочих, которые не подвержены изменениям). Это может быть системная папка «Program Files» или другая по выбору системного администратора.
После первичной установки нужно вынести из «базовой» папки в другое место на диске папки с файлами, которые «идеологически» относятся не к web-серверу, а к web-сайту. Для определённости будем предполагать, после распаковки дистрибутива все его компоненты находятся в папке «C:\Program Files\Apache24», а web-сайт будет размещаться в папке «D:\www».
Оптимизация размещения файловых областей
Сразу после установки структура папок программного пакета Apache выглядит следующим образом:
bin — исполняемые файлы Web-сервера.
cgi-bin — CGI-сценарии Web-сайта.
conf — конфигурационные файлы Web-сервера.
error — страницы ошибок протокола HTTP.
htdocs — файловая область Web-сайта (проще говоря, здесь размещается Web-сайт).
icons — пиктограммы Web-сервера
include — подключаемые файлы заголовков (h-файлы), небоходимы при сборке Web-сервера компилятором VC.
lib — библиотечные файлы Web-сервера.
logs — журналы работы Web-сервера.
manuals — документация в формате HTML.
modules — дополнительные программные модули Web-сервера (so-файлы).
Из перечисленных выше папок четырём (cgi-bin, conf, htdocs и logs) не место в базовой папке Web-сервера. Из нужно скопировать в рабочую папку Web-сайта: «D:\www». Исходные папки можно было бы удалить, однако они могут понадобится для восстановления начальной ситуации, если в ходе настройки Web-сервера что-то пойдёт не так. С другой стороны, если их оставить на прежнем месте, то из-за неполной настройки Web-сервера может случиться так, что использоваться будут именно эти папки, а не те, которые мы хотим. Поэтому после копирования их лучше просто переименовать в cgi-bin.0, conf.0, htdocs.0 и logs.0 соответственно.
Настройка на новую файловую структуру
Теперь можно отразить фактическую файловую структуру Web-сервера в параметрах конфигурационного файла «D:\www\conf\httpd.conf»:
- ServerRoot «C:/Program Files/Apache24» # путь к базовой папке Web-сервера
- PidFile «D:/www/logs/httpd.pid» # идентификатор процесса Web-сервера
- DocumentRoot «D:/www/htdocs» # здесь размещается Web-сайт
- # свойства папки с Web-сайтом
… - ErrorLog «D:/www/logs/error.log» # журнал ошибок Web-сервера
- CustomLog «D:/www/logs/access.log» common # журнал работы Web-сервера
- ScriptAlias /cgi-bin/ «D:/www/cgi-bin/» # папка серверных CGI-сценариев
- # свойства папки серверных сценариев
… - TypesConfig D:/www/conf/mime.types # описания MIME-типов
- Include «D:/www/conf/extra/httpd-manual.conf» # настройка для сопроводительной документации
Обратите внимание, что в п. 2 нужно добавить в конфигурационный файл строку с параметром PidFile, т. к. в эталонном конфигурационном файле этот параметр отсутствует. Остальные параметры в конфигурационном файле уже присутстсвуют — нужно отыскать строки, содержащие их, и заменить исходные пути к папкам на новые.
Пунктом 10 предполагается, что для включения доступа к HTML-документации по ссылке «http://localhost:8080/manual» нужно раскомментировать соответствующую строку с параметром Include и указать новый путь к подключаемому конфигурационному файлу. Однако поскольку местоположение документации тоже изменилось, то потребуется дополнительно внести изменение в файл «D:\www\conf\extra\httpd-manual.conf» по аналогии с п. 3 и 8:
- AliasMatch ^/manual(?:/(?:da|de|en|es|fr|ja|ko|pt-br|ru|tr|zh-cn))?(/.*)?$ «C:/Program Files/Apache24/manual$1«
- …
Запуск сервера и проверка настройки
Поскольку мы изменили файловую структуру Web-сервера, запускать исполняемый модуль сервера нужно командой (её можно записать в bat- или cmd-файл): «C:\Program Files\Apache24\bin\httpd.exe» -w -f «D:\www\conf\httpd.conf» -d «C:\Program Files\Apache24\.»
Запущенный в режиме пользовательского приложения Apache (т. е. запущенный с помощью только что приведенной командной строки) может быть остановлен комбинацией клавиш [Ctrl]+[C]. Если же при этом возникли какие-нибудь трудности, то можно использовать такую команду: taskkill /f /IM httpd.exe
Чтобы установить Apache в качестве службы, надо выполнить команду: «C:\Program Files\Apache24\bin\httpd.exe» -k install -f «D:\www\conf\httpd.conf» -d «C:\Program Files\Apache24\.»
Запуск и останов службы Web-сервера Apache производится командами: «C:\Program Files\Apache24\bin\httpd.exe» -k start и «C:\Program Files\Apache24\bin\httpd.exe» -k stop соответственно.
Удалить Apache из списка служб Windows можно с помощью команды: «C:\Program Files\Apache24\bin\httpd.exe» -k uninstall
Проверка правильности установки и первоначальной настройки Web-сервера выполняется вводом в Web-браузере URL: «http://localhost:80/». Если всё было выполнено правильно, должна открыться страничка с текстом «It works!»
Если устанавливалась сопроводительная документация в HTML-формате, то она должна быть доступна по ссылке «http://localhost:80/manual/»
Apache ведёт протокол доступа к сайту в файле «D:\www\conf\access.log». Сведения о проблемах в работе сервера записываются в файл «D:\www\conf\error.log». Его анализ может быть особенно полезен при настройке выполнения CGI-сценариев.
Дополнительная настройка
В дополнение к перечисленным выше настройкам нужно проверить значение параметра Listen, которым задаются настройки сетевого интерфейса (ip-адрес и номер TCP-порта), на котором сервер будет принимать клиентские подключения. Если Apache используется индивидуальным Web-разработчиком, то можно рекомендовать такую конфигурацию:
Listen 127.0.0.1:8080 # параметры сетевого интерфейса
Номер TCP-порта не должен конфликтовать с другим программным обеспечением, установленным на компьютере. Так, стандартный порт HTTP 80 часто бывает занят клиентом Skype. Для совместного использования сервера в сети нужно указать правильный IP-адрес или сетевое имя компьютера, на котором устанавливается Web-сервер.
Web-сервер Apache чаще всего используется совместно с интерпретаторами таких языков серверных сценариев, как PHP и Perl. Для того, чтобы на Web-сайте могли использоваться сценарии PHP (предполагаем, что PHP установлен в папку C:\PHP5), нужно добавить в конфигурационный файл «D:\www\conf\httpd.conf» следующие строки:
- LoadModule php5_module «C:/PHP5/php5apache2_2.dll»
- AddType application/x-httpd-php .php
- PHPIniDir «C:/PHP5»
Нужно отметить, что в папке PHP5 должен существовать конфигурационный файл php.ini, созданный на основе файла php.ini-development (если сервер используется для разработки Web-сайтов) или php.ini-production (это настоящий Web-сервер). Чтобы модули PHP могли найти все необходимые им динамические библиотеки, путь к папке C:\PHP5 должен быть прописан в переменной PATH среды окружения Windows.
Серверные CGI-сценарии на языке Perl уже должны выполняться при соблюдении двух условий:
- Интерпретатор языка Perl установлен на этом компьютере.
- В первой строке файлов сценариев правильно указан путь к интерпретатору Perl, например: #!C:/PERL/bin/perl.exe -w
Для проверки можно ввести в браузере URL: http://localhost:8080/cgi-bin/printenv.pl, предварительно подправив первую строку сценария printenv.pl в соответствии с п. 2.
Остальные нюансы настройки Web-сервера Apache под Windows выходят за рамки этой статьи.
Публичное использование материалов сайта допускается только при условии прямой гиперссылки на этот интернет-ресурс.
Заметки сисадмина о интересных вещах из мира IT, инструкции и рецензии. Настраиваем Компьютеры/Сервера/1С/SIP-телефонию в Москве
Установка сервера Apache на Windows
- Скачиваем дистрибутив Visual Studio 2017 (VC15).
- Выбираем нужную вам разрядночть x32 или x64 дистрибутива Apache 2.4.x OpenSSL 1.1.1 VC15
- Скачиваем Apache с сайта https://www.apachehaus.com/cgi-bin/download.plx
- Распаковываем архив в корень c:\apache24
- Устанавливаем как службу httpd -k install и запускаем ее
Управление Apache из командной строки
В Windows запускать, останавливать и перезапускать сервер Apache из командной строки можно при помощи следующих команд:
httpd –k start (запуск);
httpd –k restart (перезапуск);
httpd –k stop или httpd –k shutdown (остановка).
Все команды следует выполнять из каталога bin сервера Apache (C:\Apache24\bin\). Команды с ключом –k являются управляющими командами сервера Apache.
Так команды httpd –k install и httpd –k uninstall позволяют установить и удалить сервис Apache24. Получить полный список команд управления с их кратким описанием можно командой httpd –help или в документации к серверу Apache.
Команда httpd -t позволяет проверить конфигурационные файлы Apache на предмет наличия синтаксических ошибок. В случае их отсутствия выдается строка “Syntax OK“. Если же в конфигурационных файлах имеются ошибки, то в результате тестирования программа выдаст сообщение об ошибке, например:
Syntax error on line 57 of C:/Apache24/conf/httpd.conf: ServerRoot takes one argument, Common directory of server-related files.
Если сервис Apache24 успешно установлен, как это описано в предыдущем разделе, то управлять запуском и остановкой Web-сервера можно при помощи системной команды NET:
NET START Apache24 — запуск сервиса;
NET STOP Apache24 — остановка сервиса.
Сам себе хостмастер или установка Apache на платформе Windows
Эта статья – пошаговая инструкция по созданию локального web-сервера. В ней описана установка web-сервера Apache 2.4 на платформе ОС Windows. Тестирование установки выполнялось на Windows XP SP3.
- Apache 2.4 (версия 2.4.10);
- PHP 5.4 (версия 5.4.34);
- MySQL 5.5 (версия 5.5.23).
Эта рабочая среда подойдет:
- опытным вебмастерам для тестирования своих проектов;
- начинающим вебмастерам для создания своих первых сайтов.
Дистрибутивы Apache 2.4 и PHP 5.4 скомпилированы в VC9 (Visual Studio 2008).
Версия Apache 2.4 VC9 работает, практически, со всеми актуальными версиями Windows (7/8/Vista/XP SP3).
Для работы приложений VC9, прежде всего, необходимо обновить библиотеки Visual C++.
Установка пакета обновлений библиотек Visual C++
Скачиваем дистрибутив обновлений vcredist_x86.exe с сайта Microsoft, запускаем файл и выполняем обновление.
Установка и настройка сервера Apache 2.4
На сайте apache.org нет версии Apache 2.4 для Windows. Поэтому дистрибутив возьмем на apachelounge.com. В момент написания статьи последний релиз – Apache 2.4.10.
В разделе Additional + VC9 можно выбрать два варианта дистрибутива – с поддержкой и без поддержки ssl. Мы останавливаемся на втором варианте и скачиваем архив httpd-2.4.10-win32-VC9.zip .
В дистрибутиве Apache нет файла инсталляции. Поэтому установка будет выполняться вручную.
Создаем папку и распаковываем архив httpd-2.4.10-win32-VC9.zip .
В файле конфигурации httpd. conf по умолчанию установлены маршруты C:\ Apache24 . Поэтому, правок в файле конфигурации будет гораздо меньше, если распаковать архив в эту папку.
Мы распакуем дистрибутив в папку C:\ TestServer .
Вносим правки в файл конфигурации C:\ TestServer \ Apache24\ conf\ httpd. conf . При написании путей вместо символа «\» (обратная косая черта) следует использовать символ «/» (прямая косая черта). Так прописываются пути в операционных системах Linux и Unix. А ведь первоначально Apache разрабатывался именно для этих операционных систем.
Выполняем групповую замену текста C:/ Apache24 на C:/ TestServer / Apache24 .
Устанавливаем значение параметра ServerName .
ServerName localhost:80
Устанавливаем значение параметра ServerAdmin (e-mail администратора).
ServerAdmin admin@mydomain.ru
Устанавливаем значение параметра DocumentRoot (расположение документов сайта).
DocumentRoot C:/ TestServer / Apache24/ htdocs
Возможно, вы захотите хранить документы сайта отдельно от сервера. Например, в папке C:\ MySites . Тогда этот параметр можно изменить.
DocumentRoot C:/ MySites
Исполняемые файлы Apache находятся в папке C:\TestServer \Apache24\bin . Добавляем это значение в переменную среды PATH Windows .
PATH = C:\TestServer \Apache24\bin;
Устанавливаем Apache как службу.
httpd.exe -k install
Если включен брандмауэр Windows, то при установке службы появится сообщение о блокировке программы от внешних подключений. Для работы службы необходимо дать разрешение на разблокирование.
Запускаем сервер Apache.
httpd.exe -k start
Проверяем работоспособность сервера. В командной строке браузера набираем адрес: http://localhost. Если установка Apache прошла успешно – на экране отобразится текст It works ! . В противном случае мы увидим пустой экран.
В случае если сервер не запустился, следует проверить, не занят ли порт 80, который использует Apache по умолчанию.
Делается это с помощью команды
netstat –anb
Чаще всего этот порт используют Skype или Firefox. В этом случае следует либо освободить порт, либо перевести Apache на порт 8080 .
Для этого в файле httpd . conf изменяем значений параметров ServerName и Listen . ServerName localhost:8080
Listen 8080
После этого перезапускаем службу командой
httpd.exe -k re start
и опять пытаемся зайти по адресу http://localhost
Для удобства работы с сервером Apache можно установить в меню автозагрузки Windows ярлык, указывающий на C:\TestServer \Apache24\bin\ ApacheMonitor.exe
Установка PHP 5.4
Заходим на сайт разработчика http://windows.php.net/download/. Находим дистрибутив PHP 5.4 в секции VC9 x86 Thread Safe и загружаем архив php-5.4.34-Win32-VC9-x86.zip.
Создаем папку на локальном компьютере, пусть это будет C:\TestServer \PHP54 , и распаковываем архив.
Возвращаемся на сайт с дистрибутивом Apache. В разделе Additional + VC9 находим архив php5apache2_4.dll-php-5.4-win32.zip с PHP-модулями Apache и скачиваем его.
В архиве находим папку с самой последней версией модуля php5apache2_4.dll и помещаем его в папку C:\TestServer \PHP54 .
В файл конфигурации httpd . conf добавляем строки:
LoadModule php 5_ module « C :/ TestServer / PHP 54/ php 5 apache 2_4. dll »
AddHandler application / x — httpd — php . php
# configure the path to php . ini
PHPIniDir « C :/ TestServer / PHP 54/ php «
В папке C:\TestServer \Apache54\htdocs создаем файл test.php .
echo «Hello Apache!»;
?>
В адресной строке браузера набираем http://localhost/test.php. Если на экране появится текст Hello Apache! , то установка PHP завершилась успешно.
Настройка php.ini
Для работы с БД MySQL нам необходимо настроить php. ini – файл конфигурации PHP.
В папке C:\ TestServer \ PHP54 находятся два шаблона: php.ini- development и php.ini-production .
Переименовываем шаблон php.ini-production в php.ini .
Библиотеки для работы с БД MySQL находятся в папке C :\ TestServer \ PHP 54\ ext . Этот путь должен быть прописан в директиве extension_dir файла конфигурации php.ini.
Находим этот параметр, удаляем символ комментария в начале строки (это точка с запятой) и прописываем путь.
extension_dir = « C :/ TestServer / PHP 54/ ext «
Для работы с БД MySQL в PHP существуют две библиотеки: php _ mysqli . dll – более новая и именно ее рекомендуется использовать в работе; php _ mysql . dll – старая, но ее используют на большинстве сайтов.
В файле php.ini лучше прописать обе библиотеки.
extension = php _ mysql . dll
extension = php _ mysqli . dll
После завершения правок обязательно перезапускаем сервер Apache.
Установка и настройка MySQL
Заходим на страницу http://www.mysql.ru/download/. Выбираем версию для Win32 или Win64 . Мы будем загружать установочный пакет mysql-5.5.23-win32.msi.
Запускаем файл mysql-5.5.23-win32.msi .
Соглашаемся на лицензионные условия, выбираем тип установку Typical .
Переходим к настройке MySQL сервера.
Выбираем Detailed Configuration – детализированную настройку конфигурации.
Выбираем тип сервера с минимальными требованиями к памяти – Developer Machine .
Теперь нужно решить, с какими базами данных ( InnoDB, MyISAM ) будет работать наш сервер.
Multifunctional Database – поддерживаются InnoDB и MyISAM .
Transactional Database Only — поддерживается InnoDB .
Non-Transactional database Only — поддерживается myISAM .
При выборе поддержки InnoDB , следующий шаг – выбор места хранения таблиц InnoDB .
Максимальное число одновременных подключений лучше выбрать Manual Setting (ручная установка) и согласиться со значением по умолчанию ( 15 ).
На этом шаге параметром Enable TCP/IP Networking включается поддержка TCP-соединений, выбирается порт, по которому будут осуществляться эти соединения. Также устанавливается параметр Enable Strict Mode – режим строгого соответствия стандарту MySQL.
Теперь необходимо выбрать кодировку по умолчанию. Лучший вариант — кодировка UTF-8 . Поэтому выбираем Best Support For Multilingualism .
Для того чтобы MySQL запускался как служба Windows — устанавливаем Install as Windows Service . Если необходим автозапуск этой службы — устанавливаем Launch the MySQL Server automatically .
Теперь устанавливаем пароль администратора и выключаем опцию Modify Security Settings .
После нажатия кнопок Next и Execute установку MySQL можно считать законченной.
Для проверки работоспособности MySQL нажимаем кнопку Пуск Windows, находим утилиту работы с MySQL ( MySql Server 5.5 MySQL Server Command Line ) и запускаем ее.
После ввода пароля администратора мы попадаем в командную строку MySQL.
Вводим команду
show databases;
Если мы увидим список баз данных – это будет означать, что сервер работает правильно.
Выходим из режима командной строки:
exit;
На этом установка сервера завершена. Удачной работы!