Apache php mysql windows server 2012

Well it is finally time to start playing a bit more with Microsoft’s latest server OS Windows Server 2012 R2. One of the many things to have on the list is getting the WAMP (Windows/Apache/My…


Jun 7, 2014

How to Install Apache 2.4  MySQL and PHP on Windows Server 2012 R2

Well it is finally time to start playing a bit more with Microsoft’s latest server OS Windows Server 2012 R2. One of the many things to have on the list is getting the WAMP (Windows/Apache/MySQL/PHP) stack working. So in this post we will get installed and running Apache 2.4.9, MySQL 5.6.19 and PHP 5.5.13 on Windows Server 2012 R2. Also, instead of 32 bit apps we will be install 64 bit.

You will need to download and install  Visual C++ Re-distributable for Visual Studio 2012 from http://www.microsoft.com/en-us/download/details.aspx?id=30679#. You will also need .NET 4.0 installed as a prereq for MySQL and Visual C++ 2010 re-distributable http://www.microsoft.com/en-us/download/details.aspx?id=14632.

Download 64 bit Apache (httpd-2.4.9-win64-VC11.zip) from http://www.apachelounge.com/download/. Download and extract the zip and copy it to the root of C:. This will be C:Apache24 when it is all done.

Download php-5.5.13-Win32-VC11-x64.zip Thread Safe from http://windows.php.net/download/ . Extract and rename folder to php and move to C:.

Extract php-5.5.13-Win32-VC11-x64.zip.  Edit Apache’s config file, c:Apache24confhttpd.conf and add the following lines to the bottom of the file.

LoadModule php5_module "c:/php/php5apache2_4.dll"
AddHandler application/x-httpd-php .php
# configure the path to php.ini
PHPIniDir "C:/php"

While we are at it we can add index.php to Apache’s list just incase we want to have a starting page as php.

Find Directory index and add index.php

DirectoryIndex index.html index.php

Next we need to input a value  for ServerName variable. You will have to un-comment it. Save the changes to the config file. Next move to the Register Apache Service step.

Register Apache Service

Now let’s register Apache as a service. Open a command prompt and type.

c:apache24binhttpd -k install

If do not want Apache starting automatically at start-up/reboot:

GUI Way

  • START | RUN
  • Type in services.msc, hit Enter or click OK
  • Locate Apache2 service and double-click (or right-click for Properties)
  • Find the caption Startup type: (in the middle of the dialog box), use the pull-down and select Manual
  • Click OK

Command line

C:> sc config Apache2.4 start= demand

Add

;c:php;c:Apache24; c:Apache24bin;

to PATH in Environment variables. PATH ENVIRONMENT (System Properties | Advanced | Environment Variables | System variables | Path).
Example:
;c:php;c:apache24;c:apache24bin;

Now lets check Apache settings by issuing the command, c:Apache24binhttpd -S

PHP Edits

Now we have to do a few edits to the php.ini file to tell it to load support for mysql and the location for the extensions. Since there is not a already set php.ini file we need to rename one of the two examples to php.ini.

Rename c:phpphp.ini-development to php.ini

Now let’s edit php.ini
Uncomment extension directory.

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
extension_dir = "ext"

Uncomment mysql modules
extension=php_mysql.dll
extension=php_mysqli.dll

Save the changes and open a command prompt. Restart Apache to re-read the changes made to PHP.

Check to make sure it shows loaded modules.

C:> c:phpphp -m

So now we have Apache running and configured to use php. Lets create a file called info.php, save it and see if Apache parses the info correctly to display the results.

Open Notepad or your favorite Windows editor and type and save the following.

 <?php
phpinfo();
?>

Open your browser and type, localhost/info.php for the location and you should receive alot of information about PHP.

MySQL
Download and install mysql-5.6.19-win64.msi. Change installation directory to C:MySQLMySQL Server 5.6 instead of Program files as there could be permissions issues. Once the installation is completed you can let the configuration wizard run and setup the database server. The defaults will work just fine, but remember what you set the password to for root.

PHPMyAdmin
PHPMyAdmin is a very nice tool to use for administering your MySQL installation.
Download and install phpmyadmin-3.4.10.1-english.zip.
Extract the file and move to c:apache24htdocs. Rename directory to phpmyadmin.
Create a config directory under phpmyadmin. Open a browser and type localhost/phpmyadmin/setup/index.php to complete the installation.

At this point you should have a working Apache / PHP / MySQL installation running and ready for you to start developing !!!

Время идет :) верней несется :). Сегодня будем устанавливать и настраивать на Windwos Server 2012 Data Center расположенный в облаке Azure следующие компоненты:

  • Apache 2.2.25 (Win32 x86) с OpenSSL 0.9.8y (download)
  • PHP 5.4.17 (Win32, VC9 x86 Thread Safe) (download)
  • MySQL 5.6.12.2 (x64) (download)

Так как мы хотим подготовить сервер для реального домашнего хостинга, то сразу создадим структуру каталогов для нашего сервера и сайтов. Исполняемые (бинарные) файлы, а так же файлы конфигурации Apache, PHP, MySQL и т.д., мы разместим на одном диске (в моем случае диск F), а файлы наших сайтов, баз данных и лог файлы на другом диске (в моем случае диск G).

A0001
И так поехали!
1) В корне диска F: создаем папку iServer и в ней создаем папку PHP
2) Прописываем путь к папке PHP в системную переменную PATH. Для этого выполняем следующие операции:

  • нажимаем клавиши  Windows+Break
  • выбираем Advanced System Settings
  • далее выбираем Environment Variables
  • в части System Variables выбираем параметр PATH, клацаем по нему два раза и добавляем к концу строки наш путь (с точкой запятой перед ним) ;F:iServerPHP

A0002

  • Затем клацаем везде ОК и делаем выход из системы и снова входим. Это нужно для того чтобы переменная Path получила новое значение.
  • Запускаем cmd.exe и проверяем что переменная Path получила новое значение введя команду set и жмакнув по Enter

A0003
3) В корне диска G: создаем две папки iSites (тут будут лежать наши сайты) и iLogs (тут будут жить общие логи сервера).
4) В папке G:iSites создаем два подкаталога localhost и testru и далее в каждом из них свои подкаталоги www,log и ssl
A0004
5) Скачиваем дистриб Apache под Win32 с поддержкой SSL (на момент написания статьи httpd-2.2.25-win32-x86-openssl-0.9.8y.msi). И запускаем на выполнение.
6) На этом окошке смело жмем Next

A0005
7) Принимаем лицензионное соглашение

A0006
8) Внимательно и вдумчиво читаем вот это…

A0007
9) Заполняем все поля как на скриншоте

A0008
10) Выбираем Custom

A0009
11) Выбираем опции как на скриншоте и путь установки F:iServerApache

A0010
12) Жмакаем Install…

A0011
13) После установки в трее должен появиться значек консоли управления сервисом — Apache  A0012
Если по нему дважды клацкнуть, то должно открыться окошко управления сервисом

A0013
14) Проверяем установку запустив браузер и введя в строке адреса localhost. Видим страницу с надписью It Works!. Радуемся жизни. Что-то уже работает.

A0014
15) Далее отыскиваем файлик hosts, который обычно находится по пути C:WINDOWSsystem32driversetc и добавляем в него запись 127.0.0.1 test.ru и сохраняем.

A0015
Это укажет браузеру где искать наш тестовый домент test.ru. Кстати, заметьте, что в файле уже присутствует запись 127.0.0.1 localhost. Именно по этому браузер и узнал ip сайта localhost, когда мы ввели это имя в строке адреса браузера. Проверяем теперь это в браузере.

A0016
Но не шибко радуемся. Так как это еще не мультихостинг. :) Для него еще много что надо настроить.
16) Теперь будем прикручивать PHP. На текущий момент это версия PHP 5.4.17. Качаем дистриб в ZIP архиве. Еще раз повторюсь не инсталер с расширением .MSI, а именно ZIP архив. Файлик на момент написания статьи называется php-5.4.17-Win32-VC9-x86.zip, вот его и качаем.
17) Разархивируем содержимое скачанного архива в папку F:iServerPHP
18) Прикручивать PHP к Apache будем как модуль Apache. Для этого идем в каталог F:iServerApacheconf, и добавляем в файлик httpd.conf в окончание блока инструкций LoadModule (в строки 130 и 131) две строки:
LoadModule php5_module «F:/iServer/PHP/php5apache2_2.dll»
PHPIniDir «F:/iServer/PHP/»

19) Находим в файлике httpd.conf инструкции AddType, в конец этого блока (в моем случае в строку 409) вставляем инструкцию:
AddType application/x-httpd-php .php
20) Находим в файле httpd.conf блок инструкций DirectoryIndex. И добавляем в инструкцию DirectoryIndex указание на файл index.php. Чтобы в конечном виде инструкция выглядела так:
DirectoryIndex index.html index.php
Сохраняем httpd.conf и выходим.
21) Переименовываем или копируем файл php.ini-production (в каталоге F:iServerPHP) в файл php.ini.
22) Находим в файле php.ini строку short_open_tag = Off. И приводим ее к виду short_open_tag = On
23) Создаем в каталоге R:ServerApachehtdocs файлик phptest.php и пишем в нем следущий код:
<?
phpinfo();
?>
Сохраняем файлик.
24) Останавливаем и снова запускаем Apache через консоль управления Apache. После перезапуска Apache можно открыть окно управления сервисом Apache дважды кликнув по иконке в трее. Должны увидеть следующее окошко:
A0017
Обратите внимание, что в статусной панели сервиса управления Apache отображается, что так же загружен модуль PHP и указана его версия.
Если вы этого не увидели, то сверните окошко и разверните его снова. Если и это не помогло, значит, что то сделали не так и 25 шаг, скорее всего у вас сделать не получится.
25) Тестируем работу PHP. Набираем в браузере http://localhost/phptest.php и видим следующую картинку и радуемся жизни. PHP заработал:
A0018
Если такого не видим, то повторяем все шаги снова, до тех пор пока не увидим :).
26) Позаботимся немного о безопасности нашего сервера. По умолчанию, при установке, сервис Apache запускается под пользователем SYSTEM, который имеет в системе максимальные права. Это не есть гуд. Сейчас будем исправлять эту ситуацию.

  • создаем учетную запись iUser и назначаем ей пароль срок действия которого ни когда не истекает
  • проверяем чтобы она входила только в группу пользователи
  • запрещаем для пользователя iUser локальный вход и выставляем право работать в режиме операционной системы и вход в качестве службы через оснастку gpedit.msc

A0019

  • Даем учетной записи iUser право на запись в папку F:iServerApachelogs. И только в эту папку. По умолчанию в другие папки доступа на запись и не должно быть. Потом, после переноса файлов логов сервера в другое место, права на эту папку для iUser можно убрать, так как они будут не нужны.
  • Через оснастку управления службами устанавливаем запуск сервиса Apache2.2 под учетной записью iUser

A0020

  • Перезапускаем службу Apache2.2
  • Ну и проверяем работу зайдя по адресу http://localhost

27) Настраиваем виртуальные хосты. На 4 шаге мы создали структуру расположения сайтов на нашем сервере. Теперь, так же, выдаем права для учетной записи iUser на запись в папку G:iLogs, а на папку G:iSites (со всеми ее подкаталогами), только на чтение, за исключением подкаталогов log, для которых даем право на запись.
Кроме того, для некоторых CMS типа Joomla, нужно будет дать разрешение отдельно и только на запись в файл конфигурации. Это еще одна из настроек безопасности для сайта. Ну это так для общего развития инфа :)
28) Идем в папку F:iServerApacheconfextra и редактируем файл httpd-vhosts.conf. Приводим его к вот такому виду:

A0021
29) Раскомментируем в файле httpd.conf строчки
LoadModule logio_module modules/mod_logio.so
Include conf/extra/httpd-vhosts.conf

30) В файле httpd.conf находим строку DocumentRoot «F:/iServer/Apache/htdocs» и меняем ее на DocumentRoot «G:/iSites/localhost/www»
31) В файле httpd.conf находим строку <Directory «F:/iServer/Apache/htdocs»> и меняем ее на <Directory «G:/iSites»>
32) В файле httpd.conf находим строку ErrorLog «logs/error.log» и меняем ее на ErrorLog «G:/iLogs/error.log»
33) В файле httpd.conf находим строку CustomLog «logs/access.log» common и меняем ее на CustomLog «G:/iLogs/access.log» combinedio
34) В каталоге G:iSiteslocalhostwww создаем файлик index.html со следующим содержимым:
<H1>It is my LocalHost</H1>
35) В каталоге G:iSitestestruwww создаем файлик index.html со следующим содержимым:
<H1>It is my TEST.RU</H1>
36) Рестартуем Apache. Заходим браузером по адресу http://localhost и видим следующие:

A0022
Заходим по адресу test.ru и видим следующее:

A0023
Радуемся реально работающему виртуальному хостингу.
Если не видим, то не радуемся. И ищем где ошиблись.
37) Языковые настройки. Редактируем файлик F:iServerApacheconfextrahttpd-languages.conf. Комментируем все строки AddLanguage с теми языками, которые нам не нужны. Я оставил только строки:

AddLanguage en .en
AddLanguage ru .ru

Находим строку LanguagePriority и убираем там все языки, которые не нужны. У меня эта строчка выглядит так:

LanguagePriority en ru

Сохраняем файл.

В файле httpd.conf расскомментируем строчку Include conf/extra/httpd-languages.conf.

38) Включаем SSI. В файле httpd.conf находим строки:

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

И расскоментируем их.
Находим блок <Directory «G:/iSites»> и в нем строку Options Indexes FollowSymLinks. Приводим ее к виду Options Indexes FollowSymLinks Includes

Сохраняем файл.
39) В каталоге G:iSiteslocalhostwww создаем файл ssi.html со следующим содержимым:

SSI тест прошел успешно — ssi.html!

Затем, там же создаем файл ssitest.shtml со следующим содержимым:

<!—#include virtual=»/ssi.html» —>

40) Рестартуем Apache. В броузере вводим адрес http://localhost/ssitest.shtml и видим следующее:

A0024
Радуемся что работает русский язык и SSI. Если не увидели, то упорно ищем ошибку.
41) Вот и настала очередь мускула. Скачиваем x64 версию 5.6.12.2 MySQL (эта последняя на момент написания статьи и файлик назывался mysql-installer-community-5.6.12.2.msi). Стоит обратить внимание что хоть файл msi 32 разрядный, но он устанавливает обе версии x32 или x64 в зависимости от платформы. И так, клацаем по нему и понеслась установка…
сперва мелькнет вот такой экран

A0025
потом такой

A0026
и вот на этом выбираем  Install MySQL Products

A0027
42) Соглашаемся с лицензией и жмем Next

A0028
43) Ставим еще одну галку… ну не надо нам проверять наличие новой версии… и так новую уже качнули самую новую
A0029
44) Выбираем пункт меню Custom и каталоги где будут размещаться бинарные файлы и файлы баз данных. Восклицательный знак в желтом треугольнике предупреждает, что каталог для данных уже существует. Но я сам его создал и он пустой, так что все ок. Жмем Next…

A0030
45) Теперь кастомизируем :)

A0032
И жмакаем Next
46) Тут может потребовать еще установить недостающие компоненты типа библиотек VC, если попросил, то качаем, ставим и продолжаем установку. У меня уже стоял редистрибютив VC10, так что просто жмем Next

A0033
47) Терь жмем Execute

A0034
48) Отекзекютили… :) и жмем Next

A0035
49) Опять жмем Next

A0036
50) Выбираем все как на скрине и жмем Next

A0037
51) Задаем root пароль для MySQL и создаем первого пользователя – администратора баз данных
обращаем внимание что поле Current Root Password оставляем пустым

A0038
A0039
A0040
И жмем Next
52) Задаем как будет называться наш сервис MySQL в службах винды и так же пользователя под которым она будет запускаться. И очень важно!!! Пользователю iUser надо  дать разрешение на запись в папку G:iMySQLData и все ее подпапки.

A0041
53) Задаем где будут жить логи скуля и жмем Next

A0042
54) Опять жмем Next

A0043
55) Жмем Finish

A0044
56) Проверяем работу MySQL (пока отдельно без привязки к Apache и PHP). Даем из командной строки команду

«F:iServerMySQLMySQL Server 5.6binmysql.exe» -h localhost -P 3306 -u root -p

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

show databases;

видим это:
A0045
И радуемся если видим. Если не видим, чешем репу и ищем ошибки.

57) Прикручиваем MySQL к Apache, хотя вернее сказать к PHP, ну а он уже прикручен к Apache. Вот такой паровозик получается. Итак редактируем файлик F:iServerPHPphp.ini. Находим в нем строчки
extension=php_mysql.dll
extension=php_mysqli.dll

и раскомментируем их. Затем находим строку mysql.default_port = и приводим ее к виду mysql.default_port = 3306. Далее находим строку mysql.default_host = и приводим ее к виду mysql.default_host = localhost
Находим строку extension_dir = «ext», расскомментируем ее и приводим ее к виду extension_dir = «F:/iServer/PHP/ext»
Указывая этим самым где находятся файлы расширений PHP.

Перезапускаем Apache.

В каталоге G:iSiteslocalhostwww создаем файлик mysqltest.php и вводим туда следующий код:

<?php
$db = mysql_connect("localhost", "root", "ВАШ ROOT ПАРОЛЬ К MySQL")
or
die("Could not connect : " . mysql_error());
mysql_select_db("test",$db) or die ("Could not select database");

$date = mysql_query("SELECT CURDATE()") or die ("Query failed: " . mysql_error());
echo mysql_result($date, 0);
mysql_close($db);
?>


В броузере вводим адрес http://localhost/mysqltest.php и если все сделали правильно, то видим текущую дату.

58) Включим функции PHP для работы с графикой. Редактируем файлик F:iServerPHPphp.ini. Находим строку extension=php_gd2.dll  и расскоментируем ее. Перезапускаем Apache.

59) В каталоге G:iSiteslocalhostwww создаем файлик gdtest.php и вводим следующий код:

<?
$pic=imagecreate(350,100);
$piccolor=imagecolorallocate($pic, 255,255,255);
$textcolor=imagecolorallocate($pic, 0,0,0);
$linecolor=imagecolorallocate($pic, 0,0,255);
$text="GD test successful - gdtest.php!";
imagerectangle($pic, 1,99, 349,0, $linecolor);
imagestring($pic,5,30,40, $text, $textcolor);
header("content-type: image/png");
imagepng($pic);
imagedestroy($pic);
?>

Вводим в браузере адрес http://localhost/gdtest.php и видим:

A0046 
Радуемся жизни… Если видим. Да и если даже не видим, все  равное радуемся :)

60) Теперь настроим rewrite_module, оч полезная штука :). В файле httpd.conf расскомментируем строчку

LoadModule rewrite_module modules/mod_rewrite.so

Далее ищем конструкцию

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

И заменяем в ней строку AllowOverride None на строку AllowOverride All
Затем чуть ниже так же будет просто строка AllowOverride None ее надо поменять на AllowOverride All
Это включает обработку ВСЕХ параметров ВСЕХ .htaccess во всех каталогах.

Теперь проверяем работу модуля rewrite. Рестрартуем Apache

В каталоге G:iSiteslocalhostwww создаем файлик .htaccess и в него вносим одну строку

Redirect /index.html http://ya.ru

эта строка перенаправляет с файла index.html на сайт ya.ru

В браузере просто набираем localhost и нас должно перебросить на страничку ya.ru

Если сработало, то все настроили правильно. Ну а если нет, то ищем где накосячили.

В этой статье мы рассмотрим процесс установки Apache 2.4.x и PHP 5.6.x на стандартной 64-разрядной версии Windows Server 2012/2008.

Бинарные версии Apache Windows Server в исходном репозитории недоступны, и мы вынуждены обратиться к сторонним дистрибутивам, таким как apachehaus.com. Я использую версию httpd-2.4.20-x64-vc11-r2.zip, которую можно скачать здесь. Она скомпилирована с помощью VC ++ 2012 (VC11). Убедитесь, что сервер установлен с применением VC11 64bit. Иначе могут возникнуть ошибки, такие как отсутствие необходимых модулей, или Apache не будет запускаться. Его можно загрузить прямо с зеркала Microsoft. Двоичные файлы PHP можно скачать отсюда. Я использую php-5.6.22-Win32-VC11-x64.zip, который скомпилирован с помощью vc11.

Установка Apache

Сначала загрузите последнюю версию Apache HTTP Server win32 и извлеките файлы в удобное место, например «C:Apache». Если Apache установлен в «C: Program Files Apache2.2», скрипты cgi и PHP могут некорректно находить пути к файлам из-за пробелов в именах каталогов.

В этом примере мы создадим каталог Apache. Используя «Блокнот», откройте файл httpd.conf. Этот файл находится в подкаталоге /conf. Обратите внимание, что в конфигурационных файлах Apache в полных путях к файлу должны использоваться слэши «/».

Теперь можно попробовать установить Apache на Windows7. Откройте командную строку и перейдите в каталог «c:Apache bin» и введите команду httpd -k install:

c:Apachebin>httpd -k install
Installing the 'Apache2.4' service
The 'Apache2.4' service is successfully installed.
Testing httpd.conf....
Errors reported here must be corrected before the service can be started.
httpd: Syntax error on line 39 of C:/Apache/conf/httpd.conf: ServerRoot must be
a valid directory

Из приведенного выше фрагмента кода видно, что служба была установлена, но с ошибкой. Корневой каталог сервера нужно исправить до запуска службы, если значение каталога установки по умолчанию было изменено (по умолчанию используется значение /Apache2.4). В данном случае это / Apache:

Define SRVROOT "/Apache"
ServerRoot "${SRVROOT}"

После этого дважды кликните по исполняемому файлу монитора Apache Server или через командную строку введите start / stop / restart the service. Примеры команд для CMD приведены в следующем фрагменте кода:

c:Apachebin>httpd -k start
c:Apachebin>httpd -k restart
c:Apachebin>httpd -k stop
The 'Apache2.4' service is stopping.
The 'Apache2.4' service has stopped.

Если при запуске сервера Apache PHP Windows выводится сообщение об ошибке (приведено ниже), проверьте, запущен ли уже процесс httpd, выполняется процесс IIS и прослушивается порт 80. IIS является установленным по умолчанию веб-сервером, он настроен на порт 80:

c:Apachebin>httpd -k start
(OS 10048)Only one usage of each socket address (protocol/network address/port)
is normally permitted. : AH00072: make_sock: could not bind to address [::]:80
(OS 10048)Only one usage of each socket address (protocol/network address/port)
is normally permitted. : AH00072: make_sock: could not bind to address 0.0.0.0:
80
AH00451: no listening sockets available, shutting down
AH00015: Unable to open logs

Если в данный момент IIS запущен, его можно отключить через «Диспетчер серверов». В командной строке введите «services.msc». Найдите службу «web publishing platform», дважды кликните по ней мышью, чтобы открыть свойства службы и остановите ее. Чтобы запретить ее запуск при следующей перезагрузке, можно поменять тип запуска на ручной. Кроме этого, если на сервере установлен Skype, он также конфликтует с портом 80.

После того, как Apache был запущен и все настройки были заданы верно, при переходе по адресу http://localhost/ в любом браузере должна отображаться стандартная страница http или просто сообщение ”It works”.

Установка PHP

Сначала загрузите двоичные файлы PHP и разархивируйте их в папку «C:php». Затем переименуйте файл c:phpphp.ini-development в php.ini. Откройте его и измените значения нескольких переменных.

Измените значение переменной «extension_dir» на “C:phpext”. По умолчанию она закомментирована или для нее установлено значение «/ext«. Также можно включить в php.ini необходимые расширения, удалив символ «;» в начале строки:

;extension=php_mbstring.dll
;extension=php_exif.dll 
extension=php_mysql.dll
extension=php_mysqli.dll

Кроме этого нужно задать для переменной sessions.save_path папку временных файлов Windows (то есть C:Temp).

Каталоги PHP и Apache также необходимо добавить для переменных путей среды. Откройте Панель управления — Система и безопасность — Местоположение системы и добавьте;C:php; C:Apachebin” в конец списка «Системные переменные пути» и нажмите «ОК», чтобы сохранить изменения.

Перед перезапуском службы Apache Windows необходимо указать в файле httpd.conf модули PHP. Добавьте следующие строки в конец файла httpd.conf под раздел «LoadModule»:

LoadModule php5_module "c:/php/php5apache2_4.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php"

Также нужно добавить «index.php» в раздел DirectoryIndex в файле httpd.conf, как показано ниже:

<IfModule dir_module>
 DirectoryIndex index.html index.php
</IfModule>

После внесения изменений сохраните файл httpd.conf и закройте его.

Чтобы изменения вступили в силу, необходимо перезапустить службу Apache. Сделать это можно через монитор Apache Service или из командной строки — «httpd -k restart«.

Создайте новую страницу «index.php» в папке C:Apachehtdocs и поместите в нее любой php-код. Например, я использовал следующий код:

После сохранения изменений в файле откройте в браузере http://localhost/index.php, и если все в порядке вы увидите страницу phpinfo.

Мы завершили установку Apache PHP на Windows Server 2012. В файлах httpd.conf и php.ini многие модули отключены или закомментированы. Их можно включить, удалив комментарии и перезапустив службы Apache. Для доступа к сайтам / страницам из внешней сети убедитесь, что к файлу httpd.exe разрешен публичный доступ в Панель управления — Система и безопасность — Брандмауэр Windows — Разрешенные приложения.

1. Download and install apache.2.4

https://home.apache.org/~steffenal/VC14/binaries/httpd-2.4.38-win64-VC14.zip

Extract to the apache24 directory of the d drive

Configuring apache

Modify the httpd.conf file

# definition

Define SRVROOT «d:apache24»

ServerRoot «${SRVROOT}»

Listen 80

#

LoadModule access_compat_module modules/mod_access_compat.so

LoadModule actions_module modules/mod_actions.so

LoadModule alias_module modules/mod_alias.so

LoadModule allowmethods_module modules/mod_allowmethods.so

LoadModule asis_module modules/mod_asis.so

LoadModule auth_basic_module modules/mod_auth_basic.so

LoadModule authn_core_module modules/mod_authn_core.so

LoadModule authn_file_module modules/mod_authn_file.so

LoadModule authz_core_module modules/mod_authz_core.so

LoadModule authz_groupfile_module modules/mod_authz_groupfile.so

LoadModule authz_host_module modules/mod_authz_host.so

LoadModule authz_user_module modules/mod_authz_user.so

LoadModule autoindex_module modules/mod_autoindex.so

LoadModule cgi_module modules/mod_cgi.so

LoadModule dir_module modules/mod_dir.so

LoadModule env_module modules/mod_env.so

LoadModule include_module modules/mod_include.so

LoadModule isapi_module modules/mod_isapi.so

LoadModule log_config_module modules/mod_log_config.so

LoadModule mime_module modules/mod_mime.so

LoadModule negotiation_module modules/mod_negotiation.so

LoadModule rewrite_module modules/mod_rewrite.so

LoadModule setenvif_module modules/mod_setenvif.so

LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

LoadModule ssl_module modules/mod_ssl.so

# php’s library file

LoadModule php7_module «D:/php-7.1.26/php7apache2_4.dll»

AddHandler application/x-httpd-php .php

PHPIniDir «D:/php-7.1.26»

<IfModule unixd_module>

User daemon

Group daemon

</IfModule>

ServerAdmin [email protected]

<Directory />

    AllowOverride none

    Require all denied

</Directory>

DocumentRoot «${SRVROOT}/htdocs»

<Directory «${SRVROOT}/htdocs»>

Switch to the d drive apache24/bin directory and register apache as a system service.

Httpd.exe –k install –n “apache24”

Open directlyhttp://localhost

Whether the display is ok, indicating normal work

2. Download configuration php

Note that the VC14 x64 Thread Safe version must have the apache link dll file.

Php download address:

https://windows.php.net/download#php-7.1

X86_64 bit, and there is apache link dll library file

VC14 x64 Thread Safe (2019-Jan-10 00:43:38)  version

Php.ini file configuration:

max_execution_time = 30

max_input_time = 60

memory_limit = 256M

error_reporting = E_ALL

display_errors = On

display_startup_errors = On

log_errors = On

log_errors_max_len = 1024

post_max_size = 105M

default_mimetype = «text/html»

default_charset = «UTF-8»

#

extension_dir = «D:php-7.1.26ext»

file_uploads = On

# Upload temporary directory

upload_tmp_dir = D:temp

upload_max_filesize = 105M

max_file_uploads = 20

default_socket_timeout = 60

extension=php_curl.dll

extension=php_mbstring.dll

extension=php_mysqli.dll

[mail function]

SMTP = localhost

smtp_port = 25

mail.add_x_header = On

[SQL]

sql.safe_mode = Off

In the store website data directory: D: apache24 htdocs to create a Php information print Php information to verify whether the php environment is ok

<?php

Echo phpinfo();

?>

Visit http://localhost/info.php

3. Install mysql5.7

Download mysql msi installation package

It contains x64 and x32 bit versions

Create an account dbadmin, dbapass

testPhp7 operation mysql database code:

create database china charset=utf8;

create table users(id int,username varchar(255));

insert into users(id username) values(1,’tom’);

<?php
$servername = "localhost";
$username = "dbadmin";
$password = "dbpass";
$dbname = "china";
 
// Create a connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " .  $conn->connect_error);
} 
 
$sql = "SELECT * FROM users";
$result = $conn->query($sql);
 
if ($result->num_rows > 0) {
    //  Output Data
    while($row = $result->fetch_assoc()) {
        echo $row['id'].','.$row['username'].'</br>';
    }
} else {
    echo  "0 result";
}

//Add record

$insertSql = "insert into users(id, username) values(18, 'hanmeimei')";
$result = $conn->query($insertSql);
echo $result . "n";


$conn->close();
?>

 

Оглавление

1. Веб-сервер на Windows

2. Как установить Apache на Windows

3. Как установить PHP на Windows

4. Настройка PHP 8

5. Как установить MySQL в Windows

6. Как установить phpMyAdmin в Windows

Заключение


Веб-сервер — это программа, которая предназначена для обработки запросов к сайтам и отправки пользователям страниц веб-сайтов. Самый популярный пример веб-сервера это Apache.

PHP — это язык программирования. Также называется среда для выполнения скриптов, написанных на PHP. В операционной системе, в том числе и Windows, PHP может быть установлен самостоятельно, без веб-сервера. В этом случае программы (скрипты) на PHP можно запускать из командной строки. Но веб-приложения очень часто используют PHP, данный интерпретатор стал, фактически, стандартом веб-серверов и поэтому они почти всегда устанавливаются вместе.

MySQL — это система управления базами данных (СУБД). Это также самостоятельная программа, она используется для хранения данных, поиска по базам данных, для изменения и удаления данных. Веб-приложения нуждаются в постоянном хранилище, поэтому для веб-сервера дополнительно устанавливается и СУБД. Кстати, вполне возможно, что вы слышали про MariaDB — это тоже СУБД. Первой появилась MySQL, а затем от неё ответвилась MariaDB. Для веб-приложений обе эти СУБД являются взаимозаменяемыми, то есть никакой разницы нет. В этой инструкции я буду показывать установку на примере MySQL, тем не менее если вы хотите попробовать новую MariaDB, то смотрите статью «Инструкция по установке веб-сервера Apache c PHP, MariaDB и phpMyAdmin в Windows».

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

Особенность Apache и других компонентов веб-сервера в том, что их корни уходят в Linux. И эти программы применяют в своей работе основные концепции этой операционной системы. Например, программы очень гибки в настройке — можно выполнить установку в любую папку, сайты также можно разместить в любой папке, в том числе на другом диске, не на том, где установлен сам веб-сервер. Даже файлы журналов можно вынести на третий диск и так далее. У веб-сервера много встроенных модулей — можно включить или отключить их в любом сочетании, можно подключить внешние модули. Можно создать много сайтов на одном веб-сервере и для каждого из них установить персональные настройки. Но эта гибкая настройка выполняется через текстовые файлы — именно такой подход (без графического интерфейса) позволяет описать любые конфигурации

Не нужно этого боятся — я расскажу, какие файлы нужно редактировать и что именно в них писать.

Мы не будем делать какие-то комплексные настройки — наша цель, просто установить веб-сервер на Windows. Тем не менее было бы странно совсем не использовать такую мощь в настройке. Мы разделим сервер на две директории: в первой будут исполнимые файлы, а во второй — данные (файлы сайтов и баз данных). В будущем, когда возникнет необходимость делать резервные копии информации или обновлять веб-сервер, вы поймёте, насколько удобен этот подход!

Мы установим сервер в отдельную директорию. Для этого в корне диска C: создайте каталог Server. В этом каталоге создайте 2 подкаталога: bin (для исполнимых файлов) и data (для сайтов и баз данных).

Перейдите в каталог data и там создайте подпапки DB (для баз данных) и htdocs (для сайтов).

Перейдите в каталог C:ServerdataDB и создайте там пустую папку data.

Для работы всех компонентов веб-сервера необходим файл «Visual C++ Redistributable for Visual Studio 2015-2022» — это официальный файл от Microsoft. Чтобы его скачать перейдите по ссылке. После скачивания, запустите этот файл и выполните установку.

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

Как установить Apache на Windows

Перейдите на сайт apachelounge.com/download и скачайте .zip архив с веб-сервером:

Распакуйте папку Apache24 из этого архива в C:Serverbin.

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

В нём нам нужно заменить ряд строк.

Меняем

Define SRVROOT "c:/Apache24"

на

Define SRVROOT "c:/Server/bin/Apache24"

меняем

#ServerName www.example.com:80

на

ServerName localhost

меняем

DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">

на

DocumentRoot "c:/Server/data/htdocs"
<Directory "c:/Server/data/htdocs">

меняем

DirectoryIndex index.html

на

DirectoryIndex index.php index.html index.htm

меняем

    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride None

на

    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride All

и меняем

#LoadModule rewrite_module modules/mod_rewrite.so

на

LoadModule rewrite_module modules/mod_rewrite.so

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

Откройте командную строку (это можно сделать нажав одновременно клавиши Win+x).

Выберите там Windows PowerShell (администратор) и скопируйте туда:

c:ServerbinApache24binhttpd.exe -k install

Если поступит запрос от файервола в отношение Apache, то нажмите Разрешить доступ.

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

c:ServerbinApache24binhttpd.exe -k start

И нажмите Enter.

Теперь в браузере набираем http://localhost/ и видим следующее:

Это означает, что веб-сервер работает. Чтобы увидеть там файлы, добавьте их в каталог c:Serverdatahtdocs — это главная папка для данных сервера, где будут размещаться все сайты.

Как установить PHP на Windows

PHP 8 скачайте со страницы windows.php.net/download/. Выберите версию Thread Safe, обратите внимание на битность. Если вы затрудняетесь, какой именно файл скачать, то посмотрите эту заметку.

В папке c:Serverbin создаём каталог PHP и копируем в него содержимое только что скаченного архива.

В файле c:ServerbinApache24confhttpd.conf в самый конец добавляем строчки:

PHPIniDir "C:/Server/bin/PHP"
AddHandler application/x-httpd-php .php
LoadModule php_module "C:/Server/bin/php/php8apache2_4.dll"

И перезапускаем Apache:

c:ServerbinApache24binhttpd.exe -k restart

В каталоге c:Serverdatahtdocs создаём файл с названием i.php, копируем в этот файл:

<?php
phpinfo ();

В браузере откройте ссылку http://localhost/i.php. Если вы видите что-то похожее, значит PHP работает:

Настройка PHP 8

Настройка PHP происходит в файле php.ini. В zip-архивах, предназначенных для ручной установки и для обновлений, php.ini нет (это сделано специально, чтобы при обновлении случайно не удалить ваш файл с настройками). Зато есть два других, которые называются php.ini-development и php.ini-production. Любой из них, при ручной установке, можно переименовать в php.ini и настраивать дальше. На локалхосте мы будем использовать php.ini-development.

Открываем файл php.ini любым текстовым редактором, ищем строчку

;extension_dir = "ext"

и заменяем её на

extension_dir = "C:ServerbinPHPext"

Теперь найдите группу строк:

;extension=bz2
;extension=curl
;extension=ffi
;extension=ftp
;extension=fileinfo
;extension=gd
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
;extension=mbstring
;extension=exif      ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite
;extension=pgsql
;extension=shmop

и замените её на:

extension=bz2
extension=curl
extension=ffi
extension=ftp
extension=fileinfo
extension=gd
extension=gettext
extension=gmp
extension=intl
extension=imap
extension=ldap
extension=mbstring
extension=exif      ; Must be after mbstring as it depends on it
extension=mysqli
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
extension=odbc
extension=openssl
;extension=pdo_firebird
extension=pdo_mysql
;extension=pdo_oci
extension=pdo_odbc
extension=pdo_pgsql
extension=pdo_sqlite
extension=pgsql
extension=shmop

теперь раскомментируйте эту группу строк:

;extension=soap
;extension=sockets
;extension=sodium
;extension=sqlite3
;extension=tidy
;extension=xsl

должно получиться:

extension=soap
extension=sockets
extension=sodium
extension=sqlite3
extension=tidy
extension=xsl

Этими действиями мы включили расширения. Они могут понадобиться в разных ситуациях для разных скриптов. Сохраняем файл и перезапускаем Apache.

c:ServerbinApache24binhttpd.exe -k restart

Настоятельно рекомендуется добавить путь до PHP в переменную окружения PATH в Windows.

Также рекомендуется ознакомиться со статьями Что делать если PHP скрипту не хватает времени и памяти. Почему большой файл не загружается на сайт или в phpMyAdmin и Как увеличить память и время для PHP скриптов.

Материалы по дополнительной настройке, в том числе подключение поддержки PERL, Ruby, Python в Apache (только для тех, кому это нужно):

  • Как тестировать отправку писем в PHP на Windows
  • Настройка веб-сервера Apache для запуска программ Ruby на Windows
  • Настройка веб-сервера Apache для запуска программ Perl на Windows
  • Как настроить веб-сервер Apache на запуск Python в Windows

Как установить MySQL в Windows

Бесплатная версия MySQL называется MySQL Community Server. Её можно скачать на странице https://dev.mysql.com/downloads/mysql/. На этой же странице есть установщик в виде исполнимого файла, но я рекомендую скачать ZIP-архив.

На странице скачивания нам предлагают зарегистрироваться или войти в существующую учётную запись — но это делать необязательно. Достаточно нажать на ссылку «No thanks, just start my download».

В каталог c:Serverbin распаковываем файлы из только что скаченного архива. Распакованная папка будет называться примерно mysql-8.0.17-winx64 (зависит от версии), переименуйте её в mysql-8.0.

Заходим в эту папку и создаём там файл my.ini. Теперь открываем этот файл любым текстовым редактором и добавьте туда следующие строки:

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
datadir="c:/Server/data/DB/data/"
default_authentication_plugin=mysql_native_password

Сохраните и закройте его.

Настройка завершена, но нужно ещё выполнить инициализацию и установку, для этого открываем командную строку от имени администратора и последовательно вводим туда:

C:Serverbinmysql-8.0binmysqld --initialize-insecure --user=root
C:Serverbinmysql-8.0binmysqld --install
net start mysql

По окончанию этого процесса в каталоге C:ServerdataDBdata должны появиться автоматически сгенерированные файлы.

Теперь служба MySQL будет запускаться при каждом запуске Windows.

Как установить phpMyAdmin в Windows

Сайт для скачивания phpMyAdmin: phpmyadmin.net.

Прямая ссылка на самую последнюю версию: phpMyAdmin-latest-all-languages.zip.

В каталог c:Serverdatahtdocs копируем содержимое только что скаченного архива. Переименовываем эту папку в phpmyadmin.

В каталоге c:Serverdatahtdocsphpmyadmin создаём файл config.inc.php и копируем туда:

<?php
 
/* Servers configuration */
$i = 0;
 
/* Server: localhost [1] */
$i++;
$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]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['nopassword'] = true;
$cfg['Servers'][$i]['AllowNoPassword'] = true;
 
/* End of servers configuration */
 
$cfg['blowfish_secret'] = 'kjLGJ8g;Hj3mlHy+Gd~FE3mN{gIATs^1lX+T=KVYv{ubK*U0V';
$cfg['DefaultLang'] = 'ru';
$cfg['ServerDefault'] = 1;
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
 
?>

В браузере набираем http://localhost/phpmyadmin/

В качестве имя пользователя вводим root. Поле пароля оставляем пустым.

Заключение

Вот и всё — теперь у вас есть свой персональный локальный веб-сервер на своём домашнем компьютере.

Если вдруг у вас что-то не получилось, то скорее всего вы пропустили какой-то шаг или сделали его неправильно — попробуйте всё сделать в точности по инструкции. Если проблема осталась, то ознакомьтесь со справочным материалом «Ошибки при настройке и установке Apache, PHP, MySQL/MariaDB, phpMyAdmin» и если даже он не помог, то напишите о своей ошибке в комментарии.

Большое количество материалов по Apache на русском языке специально для Windows вы найдёте на этой странице.

Примеры материалов, которые могут вам пригодиться в первую очередь:

  • Как защитить веб-сервер Apache от взлома в Windows
  • Несколько сайтов на Apache
  • Apache Forwarding — проброска портов веб-сервера
  • Как сделать резервную копию баз данных MySQL (MariaDB) в Windows без phpMyAdmin
  • Почему в логах ошибок Apache не сохраняются записи об ошибке 404
  • Как в Windows поменять сообщения ошибок Apache
  • Как настроить PHP для работы с get_browser (browscap.ini) в Windows
  • Файл .htaccess в Apache
  • Как обновить Apache на Windows
  • Как обновить PHP
  • Как обновить MySQL
  • Как обновить phpMyAdmin

Связанные статьи:

  • Ошибки при настройке и установке Apache, PHP, MySQL/MariaDB, phpMyAdmin (97.9%)
  • Установка Apache, PHP, MySQL и phpMyAdmin на Windows XP (60.4%)
  • Готовая сборка Apache для Windows XP (60.4%)
  • Что делать если PHP скрипту не хватает времени и памяти. Почему большой файл не загружается на сайт или в phpMyAdmin (58.4%)
  • Ошибка «Composer detected issues in your platform: Your Composer dependencies require the following PHP extensions to be installed: mysqli, openssl» (РЕШЕНО) (58.4%)
  • Как включить mod_rewrite в Windows (RANDOM — 51%)

Эта статья поможет установить Apache, PHP, MySQL на Windows Server. Самый простой способ, облегчающий установку, настройку и управление всеми компонентами — WampServer. WampServer это платформа для веб-разработки под Windows для динамических веб-приложений с помощью сервера Apache2, интерпретатора скриптов PHP и базы данных MySQL. В него также входит веб-приложение PHPMyAdmin для наиболее простой обработки баз данных.

В Serverspace вы можете создать сервер с уже установленным приложением Apache, PHP, MySQL.

Установка

Перед началом установки WampServer необходимо настроить Windows Firewall, указав специфические порты: 80 и 443. Подробнее в статье.

Также необходимо настроить браузер Internet Explorer, для того чтобы загрузить файлы из внешних источников.

Перед работой с WampServer для начала установим необходимые библиотеки. Для этого требуются компоненты The Visual C++ Redistributable Packages (2008-2019), которые можно загрузить по следующей ссылке и установить все компоненты из каждого исполняемого файла.

Установка Git в Windows | Serverspace

Теперь загружаем установщик WampServer.

Установка WampServer на Windows | Serverspace

После запуска исполняемого файла начнется установка Wampserver

Принимаем лицензионное соглашение, указываем папку для установки (указываемый путь не должен содержать пробелов!).

Установка WampServer на Windows | Serverspace

Нажимаем Next и Install. Дожидаемся окончания установки.

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

Установка WampServer на Windows | Serverspace

Установка WampServer на Windows | Serverspace

Установка завершена, нажимаем Finish

Установка WampServer на Windows | Serverspace

На рабочем столе появится иконка с Wampserver64, запускаем сервер двойным щелчком.

Установка WampServer на Windows

В нижней панели справа появится зеленый значок запущенного сервера.

В браузере перейдите по ссылке http://localhost/ или вашему ip адресу для проверки.

Установка WampServer на Windows

Конфигурирование Apache

Откройте файл C:wamp64binapacheapache2.4.39confhttpd.conf с помощью текстового редактора. С помощью поиска найдите первое вхождение строки “Require local”, и замените параметр “local” на “all granted”.

Установка Apache, PHP, MySQL на Windows Server

Меняем на

Установка Apache, PHP, MySQL на Windows Server

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

Откройте файл конфигурации виртуальных хостов C:wamp64binapacheapache2.4.39confextrahttpd-vhosts.conf и замените содержимое тега Directory на следующие параметры:

    Options +Indexes +Includes +FollowSymLinks +MultiViews

    AllowOverride All

    Order deny,allow

    allow from all 

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

Перезапустите WampServer нажав правой кнопкой мыши в нижней панеле на значок сервера и выберите пункт “Refresh”.

Установка Apache, PHP, MySQL на Windows Server

Проверка

C другого компьютера в браузере попытайтесь перейти по адресу:

<ip-address>/index.html

где ip-address — адрес вашего Windows Server. Его можно узнать в панели управления сервером Serverspace.
Расположение IP-адреса вашего сервера в панели управления сервером | Serverspace

Например:

Установка WampServer на Windows Server

Настройка phpMyAdmin

На своем локальном хосте на главной странице WampServer в меню “Tools” выберете “phpmyadmin”, или перейдите по ссылке http://localhost/phpmyadmin/ в браузере.

Настройка phpMyAdmin | Serverspace

Настройка phpMyAdmin | Serverspace

В открывшемся окне введите значения логина и пароля по умолчанию:

Логин: root

Пароль: оставьте поле пустым

После авторизации вы можете изменить пароль для пользователя root, а также добавить новых пользователей. Для этого перейдите во вкладку “Учетные записи пользователей”.

Для добавления пользователя перейдите по ссылке “Добавить учетную запись пользователя”. Чтобы изменить пароль для уже существующих пользователей выберите действие “Редактировать привилегии”, далее “Изменить пароль”.

Редактировать привилегии Windows Server

Резервное копирование Windows Server | Serverspace

Сохраните изменения и перезапустите WampServer нажав правой кнопкой мыши в нижней панеле на значок сервера и выберите пункт “Refresh”.

Веб-сервер готов к работе.

191028
Санкт-Петербург
Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99

700
300

ООО «ИТГЛОБАЛКОМ ЛАБС»

191028
Санкт-Петербург
Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99

700
300

ООО «ИТГЛОБАЛКОМ ЛАБС»

Apache — это пользующийся заслуженной популярностью веб-сервер для платформ семейства Linux. Однако иногда по различным причинам возникает необходимость установить его на ОС Windows. Поэтому Apache был портирован на Windows. На данный момент есть несколько таких проектов:

  • ApacheHaus
  • Apache Lounge
  • BitNami WAMP Stack
  • WampServer
  • XAMPP

Рассмотрим установку Apache Lounge на Windows Server 2016. Остальные ставятся по аналогии, так как программы под Windows поставляются в виде установочных файлов, либо просто в виде собственно исполняемых файлов. Прежде всего скачиваем и устанавливаем исполняемые библиотеки Visual C для Вашей версии ОС по ссылке.

Потом скачаем сам дистрибутив с сайта apache по следующей ссылке. Распакуйте zip-архив. В нем есть папка Apache24 которая содержит весь веб-сервер Apache — исполняемые файлы, библиотеки, документацию и другое.

Веб-сервер apache

Эту папку надо распаковать туда, где вы хотите расположить Ваш веб-сервер, например на один из локальных дисков. Это можно сделать просто копированием — вставкой, так как в Windows интегрирована полная поддержка Zip-архивов. После этого откроем командную строку Windows нажав комбинацию клавиш Win+R и введя туда cmd.

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

В открывшемся окне пишем c:Apache24binhttpd -k install — то есть полное имя до исполняемого файла Apache вместе с путем (так называемое Абсолютное имя файла). Это установит Apache как системный сервис — службу — Windows.

Также как Apache для Linux, основной файл конфигурации называется httpd.conf. Располагается он в подпапке conf веб-сервера, т.е в нашем случае c:Apache24confhttpd.conf.

Для первоначальной настройки необходимо раскомментировать строку ServerName — имя или ip сервера, а также порт apache для виртуальных хостов — в случае если сайт один достаточно просто раскомментировать. А также проверить параметр Listen — порт на котором работает Apache. Если ip не указан то Apache работать на всех ip-адресах данного хоста.

ServerName <Ваш ip адрес>:80 Listen <Ваш ip адрес>:80

Например:

ServerName 78.140.223.57:80 Listen 78.140.223.57:80

Затем запускаем командой c:Apache24binhttpd -k start.

Проверить что сервер запустился можно набрав в браузере http://78.140.223.57. Если хотите чтобы сайт был доступен из внешней сети необходимо настроить правило Firewall.

Для этого нажимите Win+R и введите в командную строку firewall.cpl

Firewall.cpl

Выберите в левом столбце “Дополнительные параметры”.

Дополнительные параметры firewall

В открывшемся окне повышенной безопасности перейдите в раздел “Правила для входящих подключений”, после чего нажмите “Создать правило”.

Создание правила

Создадим правило для порта 80.

Правило для 80 порта

Правило для 80 порта

Правило для 80 порта

Правило для 80 порта

На последнем шаге задайте имя правила. После этого можно соединяться по этому порту.

Соединение по порту

Теперь настроим PHP. PHP это распространенный язык программирования для веб. Скачать его можно с официального сайта. Оно также поставляется в виде zip-архива.Распакуем скачанный архив в отдельную папку. Например в c:apache24php.

Архив apache

Теперь еще раз поправим файл c:Apache24confhttpd.conf. Внесем туда следующие параметры в секцию LoadModule.

#Подключение модуля обработки php  для Apache
LoadModule php7_module "c:/Apache24/php/php7apache2_4.dll"
AddHandler application/x-httpd-php .php
# Путь к файлу php.ini
PHPIniDir "c:/Apache24/php"

Также поправим параметр DirectoryIndex — индексный файл сайта на Index.php, так как Мы будем использовать PHP.

DirectoryIndex index.php

Создадим индексный файл php файл c:Apache24htdocsindex.php выводящий версию php.

После этого еще раз перезапускаем Apache командой.

c:Apache24binhttpd -k restart

И проверим что php работает.

Завершение установки apachr

На этом установка и настройка Apache Lounge на Windows Server 2016 окончена. В нашей базе знаний вы найдёте ещё множество статей посвящённых различным аспектам работы в Windows, а если вы ищете надежный виртуальный сервер под управлением Windows, обратите внимания на нашу услугу — Аренда виртуального сервера Windows.

Последнее обновление: 20.04.2022


Средняя оценка: 5,0, всего оценок: 4
Спасибо за Вашу оценку!
К сожалению, проголосовать не получилось. Попробуйте позже

Понравилась статья? Поделить с друзьями:
  • Aomei что это за папка в windows 10
  • Aomei windows pe builder rus скачать
  • Aomei pe builder для windows 10
  • Aomei partition magic для windows 10
  • Aomei partition assistant скачать бесплатно для windows 7