Для проведения тестов, отладки или предварительной сборки нужно быстро «поднять» сайт не на хостинге, а на локальном компьютере, а затем перенести ресурс на сервер хостинг-провайдера. Вот как это можно сделать.
- Как подготовить компьютер к работе с локальным сервером
- Desktop Server – запускаем сайт на WordPress локально
- Как запустить сайт на Open Server
- Как работать с локальным сервером Denwer
- Как создать сайт на локальном сервере Xampp
- Как пользоваться локальным сервером Winginx
- Как перенести действующий сайт на локальный сервер
- Какой локальный сервер выбрать
- Подготовка (скачивание программ, входящих в сервер, создание структуры сервера)
- Создание структуры веб-сервера
- Установка Apache 2
- Установка и настройка MySQL 8
- Установка и настройка PHP 8
- Настройка PHP 8
- Установка и настройка phpMyAdmin
- Использование сервера и бэкап данных
- Дополнительная настройка PHP
- Дополнительная настройка phpMyAdmin
- Установка почтовой заглушки
- Добавление PHP директории в PATH на Windows
- Зависание, замедление трафика и/или ошибка сервера Asynchronous AcceptEx failed
- Настройка cURL в веб-сервере Apache на Windows
- Резервное копирование данных (сайты и базы данных) Apache в Windows
- Обновление сервера
- Дополнительный материал по настройке веб-сервера в Windows
- У меня ничего не работает
- Удаление сервера
- Как защитить веб-сервер Apache от взлома в Windows
- Denwer
- OpenServer
- XAMPP
- WampServer
- AMPPS
- The Uniform Server
- Devilbox
- Winginx
- Заключительный совет
- Локальный сервер — что это?
- Local server и localhost
Как подготовить компьютер к работе с локальным сервером
Чтобы отключить IIS, в панели управления выберите меню «Программы и компоненты – Включение и отключение компонентов Windows». Снимите флаг напротив опции «Службы IIS» и сохраните изменения. Может потребоваться перезагрузка системы.

Снимаем выделение с этого чекбокса
Если открыть «Программы и компоненты» в вашей версии Windows не удалось, есть еще один способ. Используйте сочетание горячих клавиш Win+R. Откроется окно «Выполнить», где нужно указать команду appwiz.cpl
Если изменение настроек системы не помогло, отключите брандмауэр и антивирусное ПО. Некоторые сетевые экраны блокируют порт 80.

Если его в списке нет, приступайте к установке локального сервера
Продвинем ваш бизнес
В Google и «Яндексе», соцсетях, рассылках, на видеоплатформах, у блогеров

Desktop Server – запускаем сайт на WordPress локально
Вот подробная инструкция по работе с плагином:
- загрузите плагин DesktopServer для WordPress и активируйте его;
- выберите «Экспорт», а затем установите флажок «Получить сведения о реальном сервере хостинга»;
- для получения дополнительной информации посетите http://serverpress.com/.
Выберите подходящий дистрибутив с помощью выпадающего меню, укажите название экспериментального сайта и нажмите кнопку Create.

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

После перехода по URL нажимаем Next
Выберите язык. Укажите название сайта, имя пользователя, e-mail и пароль.

Заполняем название, имя пользователя, пароль и электронную почту

Мы получили доступ к админке WordPress
Воспользуйтесь руководством для новичков
, чтобы настроить сайт и проверить его работоспособность. Например, вы можете установить тему и дополнительные плагины, добавить коды отслеживания сервисов веб-аналитики. Сайт на локальном сервере имеет такую же функциональность, как ресурс на сервере хостинг-провайдера.

Создали первую запись, которая выводится на главной – все как при работе с сайтом на обычном хостинге
Как запустить сайт на Open Server
Open Server дает возможность работать без установки ПО на компьютер. Вы можете запускать сервер с USB-накопителя.
Активируйте инсталлятор и укажите путь для распаковки архива. По умолчанию программа предлагает установку на системный диск, но вы можете изменить параметры. Запустите исполняемый файл в папке Open Server и выберите язык.

Нужно открыть установочный файл. Для корректной распаковки понадобится минимум 7 ГБ свободного пространства на жестком диске
Если все сделано верно, в трее появится красный флажок. Нажмите на него, чтобы начать работу с сервером.

Обратите внимание на иконку программы в трее
Нажмите кнопку «Запустить». Затем введите в адресную строку браузера адрес http://localhost/. Вы увидите страницу приветствия.

Успешно подняли сервер на локальном компьютере
Теперь установите на локальный сервер выбранную CMS. Для этого создайте новую папку в разделе Domains. Распакуйте в нее архив с дистрибутивом движка.

Мы создали новую папку
Перезапустите Open Server с помощью меню в трее.

Нажмите кнопку «Перезапустить»

Какую CMS выбрать: руководство по выбору «движка» для сайта
Введите в адресной строке браузера URL экспериментального сайта. Вы попадете в меню установки CMS.

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


В меню установки WordPress укажите название БД и имя пользователя. Завершите установку: укажите название сайта, имя пользователя, пароль, электронный адрес администратора.

Заполняем данные для подключения сайта к базе данных
Теперь вы можете работать с сайтом на локальном сервере.
Как работать с локальным сервером Denwer
Denwer остается очень популярным среди веб-мастеров и профессиональных разработчиков, хотя многие специалисты называют это ПО устаревшим. Тем не менее, его возможностей достаточно для запуска и настройки сайтов на популярных CMS.

Откройте ярлык двойным кликом
В адресную строку браузера введите URL http://localhost/denwer/
. Вы попадете на стартовую страницу локального сервера Denwer.

Локальный сервер работает корректно
Чтобы установить CMS на локальный сервер «Денвер», создайте раздел с названием сайта в папке WebServers – Home. В разделе создайте еще одну папку с именем www. Распакуйте в нее архив с дистрибутивом движка.

Мы создали папку testik.io
В разделе создайте еще одну папку с именем www. Распакуйте в нее архив с дистрибутивом движка.

Сюда нужно скопировать движок сайта

Нажимаем кнопку «Создать»
Перезапустите локальный сервер с помощью ярлыка Restart Denwer на рабочем столе. Установите WordPress. Для этого в адресной строке браузера наберите адрес экспериментального сайта.

Denwer не подвел – сайт на локальном компьютере запускается
После окончания разработки перенесите сайт с локального сервера на сервер хостинг-провайдера.
Чтобы удалить «Денвер», выполните следующие действия:
- остановите сервер с помощью ярлыка Stop Denwer на рабочем столе;
- в командную строку введите команду subst z: /d. Это необходимо для удаления виртуального диска Z, который создается при установке ПО «Денвер». Если вы вместо значения по умолчанию Z использовали другое название виртуального диска, укажите это в команде;
- удалите папку WebServers с диска C;
- удалите ярлыки управления локальным сервером с рабочего стола.
Как создать сайт на локальном сервере Xampp
В папке Xampp активируйте контрольную панель: запустите приложение xampp-control. На панели запустите сервер Apache и базу данных.

Активируем работу сервера
Введите в адресную строку браузера URL http://localhost. Если Xampp работает корректно, вы попадете на страницу-приветствие.

Успешно подняли сервер на домашнем компьютере

Укажите название, выберите кодировку БД и нажмите кнопку «Создать»
Чтобы завершить установку CMS, введите в адресную строку браузера URL http://localhost/folder-name. Вместо значения folder-name укажите название папки с файлами CMS.

Выбираем язык для админки CMS
Завершите установку и проверьте работоспособность сайта.

Сайт на локальном сервере работает

Хостинг: как выбрать и на какие технические возможности обратить внимание
Как пользоваться локальным сервером Winginx

Активируем сервер Winginx
Перейдите по ссылке «Рабочая среда Winginx», чтобы вызвать панель управления программой. Создайте новый проект и укажите адрес экспериментального сайта.

Создаем новый проект

Нам нужно создать новую базу данных
Откройте папку сайта с помощью соответствующего меню в панели управления Winginx.

Нажмите кнопку «Открыть папку сайта»
Разархивируйте дистрибутив выбранной CMS в каталог public_html.

Выберите конечную папку и извлеките все файлы
Обратите внимание на удобный планировщик задач в панели управления Winginx. С его помощью можно планировать работу над сайтом, контролировать выполнение задач и учитывать рабочее время.

Запланировали две задачи
Как перенести действующий сайт на локальный сервер
Если вы хотите изменить существующий сайт без риска потерять данные или нарушить его работоспособность, перенесите ресурс на локальный сервер.
Если вы используете WordPress, действуйте так:
- запустите локальный сервер и установите на него WordPress;
- установите на локальном сайте дизайн-шаблон, который вы используете на реальном ресурсе;
- установите на действующий сайт и активируйте плагин Duplicator
; - в административной консоли выберите меню «Duplicator – Пакеты». Нажмите кнопку «Создать новый».

Сперва создаем новый пакет

Проверяем все элементы бэкапа
Введите в адресную строку браузера путь к файлу installer.php на тестовом ресурсе. Вы попадете на страницу установки базы данных.

Делаем диплой файлов сайта и база данных
Удалите из корневой директории тестового ресурса файлы install.php и wp-config.php.
Укажите имя пользователя и название базы данных экспериментального сайта. Отметьте, что вы прочитали техническое предупреждение и запустите установку копии ресурса на локальный сервер.

После завершения установки проверьте работоспособность сайта на локальном сервере. Вы увидите точную копию действующего ресурса со всеми публикациями и настройками.
Вы можете перенести сайт с сервера хостинг-провайдера на экспериментальный ресурс на локальном сервере без помощи плагинов. Для этого можно воспользоваться функцией «Экспорт» в административной консоли.

Выберите элемент сайта, который нужно экспортировать
С помощью функции «Импорт» можно загрузить полученный файл на локальный сервер.

Выбирайте необходимые элементы сайта

Выбираем способ экспорта

На вкладке «Импорт» загрузите файл с базой данных.

Выбираем файл для импорта
Описанными способами сайты можно переносить с локального сервера на сервер хостера и обратно. Также для создания копии ресурса и последующего переноса вы можете воспользоваться инструментами резервного копирования базы данных, например, плагином для WordPress WP Database Backup или аналогами для других движков.

Какой локальный сервер выбрать
Для рядового пользователя подойдет любой из описанных вариантов. Работа с предложенным ПО позволяет установить сайт на локальную машину, настроить, протестировать и перенести ресурс на сервер хостинг-провайдера.
Если вы пользуетесь CMS WordPress, обратите внимание на Desktop Server. Установка и настройка этой программы занимают меньше времени по сравнению с другими продуктами. Благодаря плагину для WordPress вы также ускорите перенос готового сайта на сервер хостера.
Если вы работаете с другими CMS, используйте любой из предложенных локальных серверов. Например, с Winginx вы сможете запустить сайт и контролировать разработку с помощью удобного планировщика в панели управления программой.
Можно ли обойтись без локального сервера? Конечно. Если вы создаете сайт с простой структурой или блог, при этом используете стандартный движок и дизайн-шаблон, ресурс можно сразу запускать на открытом сервере. Но вы должны точно знать, что сможете быстро обеспечить минимальную безопасность, информационную ценность ресурса, а также его соответствие техническим требованиям поисковых систем.
Установка веб-сервера на Linux:
Локальный сервер очень полезный инструмент. Он точно пригодиться веб-мастерам, программистам на PHP, тестерам на проникновение. Все программы, входящие в типичную установку веб-сервера, являются бесплатными, у всех у них открыт исходный код. Локальный веб-сервер потребляет минимум ресурсов и, на самом деле, его совсем нетрудно установить и настроить.
Эта инструкция расскажет о том, как установить локальный веб-сервер без использования готовых сборок. Этот способ имеет свои преимущества. Самыми важными из них являются: полный контроль на тем, что вы устанавливаете; возможность использовать самые последние версии программного обеспечения.
Если вы будете в точности следовать инструкции, то у вас обязательно всё заработает! Кроме тех, у кого Windows XP — если лу вас эта операционная система, то для вас сделана специальная инструкция
.
Я покажу пример установки на Windows 10, но если у вас другая версия Windows, то пусть вас это не смущает — процедура везде идентичная. Я буду скачивать последние (самые свежие) на момент написания версии программ. Если к тому времени, когда вы читаете, выйдут новые версии, то скачивайте именно их.
Вам также может пригодиться:
Подготовка (скачивание программ, входящих в сервер, создание структуры сервера)
- Apache
(непосредственно веб-сервер) - PHP
— среда для работы PHP программ (требуется практически всеми веб-сайтами) - MySQL
— система управления базами данных (требуется большинством веб-сайтов) - phpMyAdmin
— очень удобный инструмент для управления базами данных

Итак, у меня скачались следующие файлы:
- httpd-2.4.29-Win64-VC15.zip
- php-8.0.0-Win32-vs16-x64.zip
- mysql-8.0.11-winx64.zip
- phpMyAdmin-4.7.6-all-languages.zip
- vc_redist.x64.exe
Важное примечание при работе с расширениями файлов
. Если вы используете Проводник Windows для создания и переименования конфигурационных файлов, помните, что по умолчанию он не показывает файловое расширение, поэтому вы можете видеть my.ini, но на самом деле это файл my.ini.txt. Поэтому сервер не видит этот файл и не применяет настройки из него, что ведёт к ошибкам.
Поэтому при создании файлов:
Создание структуры веб-сервера
Создадим структуру каталогов нашего сервера. Главная идея — разделить исполнимые файлы и файлы сайтов с базами данных. Это удобно для обслуживания сервера, в том числе для резервного копирования.
В корне диска C:\
создайте каталог Server
. В этом каталоге создайте 2 подкаталога: bin
(для исполнимых файлов) и data
.
Перейдите в каталог data
и там создайте подпапки DB
(для баз данных) и htdocs
(для сайтов).
Перейдите в каталог C:\Server\data\DB\
и создайте там пустую папку data
.
Карта важных папок, которые упоминаются в данной инструкции:
C: └── Server ├── bin │ ├── Apache24 │ │ └─── conf │ ├── mysql-8.0 │ ├── PHP │ └── Sendmail ├── certs ├── data │ ├── DB │ │ └─── data │ └── htdocs │ └─── phpmyadmin └── manage
Установка Apache 2
Содержимое скаченного архива (точнее говоря, только каталог Apache24
), распакуйте в C:\Server\bin\
.
Перейдите в каталог c:\Server\bin\Apache24\conf\
и откройте файл httpd.conf
любым текстовым редактором.
В нём нам нужно заменить ряд строк.
Define SRVROOT "c:/Apache24"
Define SRVROOT "c:/Server/bin/Apache24"
#ServerName www.example.com:80
ServerName localhost
DocumentRoot "${SRVROOT}/htdocs" DocumentRoot "c:/Server/data/htdocs"
<Directory "${SRVROOT}/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:\Server\bin\Apache24\bin\httpd.exe -k install
Если поступит запрос от файервола в отношение Apache, то нажмите Разрешить.
Теперь вводим в командную строку:
c:\Server\bin\Apache24\bin\httpd.exe -k start
И нажмите Enter.

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

Это означает две вещи:
- Apache работает
- в каталоге c:\Server\data\htdocs\
нет ни одного файла.
Можете поиграться — добавить в каталог любые html-файлы — полноценный веб-сервер работает.
Установка и настройка MySQL 8
В каталог bin
распаковываем файлы MySQL (из архива mysql-8.0.11-winx64.zip). Переименовываем папку mysql-8.0.11-winx64 в mysql-8.0
(для краткости). Кстати, распакованная папка 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:\Server\bin\mysql-8.0\bin\mysqld --initialize-insecure --user=root C:\Server\bin\mysql-8.0\bin\mysqld --install net start mysql

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

Теперь служба MySQL будет запускаться при каждом запуске Windows.
Установка и настройка PHP 8
В папке c:\Server\bin\
создаём каталог PHP
и копируем в него содержимое архива php-8.0.0-Win32-vs16-x64.zip.
В файле c:\Server\bin\Apache24\conf\httpd.conf
в самый конец добавляем строчки
PHPIniDir "C:/Server/bin/PHP" AddHandler application/x-httpd-php .php LoadModule php_module "C:/Server/bin/php/php8apache2_4.dll"

И перезапускаем Apache
c:\Server\bin\Apache24\bin\httpd.exe -k restart
В каталоге c:\Server\data\htdocs\
создаём файл с названием 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:\Server\bin\PHP\ext\"
Теперь найдите группу строк:
;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
.
Установка и настройка phpMyAdmin
<?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'] = '';
?> В качестве имя пользователя вводим root. Поле пароля оставляем пустым. Если всё сделано правильно, то всё должно выглядеть так:

Использование сервера и бэкап данных
В каталоге c:\Server\data\htdocs\
создавайте папки и файлы, например:
c:\Server\data\htdocs\test\ajax.php – этот файл, соответственно, будет доступен по адресу http://localhost/test/ajax.php и т.д.
Для создания полного бэкапа всех сайтов и баз данных достаточно скопировать каталог C:\Server\data\
.
Перед обновлением модулей, делайте бэкап папки bin
– в случае возникновения проблем, можно будет легко откатиться к предыдущим версиям.
При повторной установке сервера или при его обновлении, необходимо заново настраивать конфигурационные файлы. Если у вас есть копии этих файлов, то процесс можно значительно ускорить. Желательно забэкапить следующие файлы:
- c:\Server\bin\Apache24\conf\httpd.conf
- c:\Server\bin\mysql-8.0\my.ini
- c:\Server\bin\PHP\php.ini
- c:\Server\data\htdocs\phpMyAdmin\config.inc.php
В них и хранятся все настройки.
Дополнительная настройка PHP
PHP в настоящее время очень мощный, гибкий, удобный инструмент. На локальном компьютере с помощью него можно решать разнообразные задачи, совсем не обязательно связанные с генерацией Web-страниц. При решении неординарных задач можно упереться в ограничения, установленные в настройках. Эти настройки содержаться в файле php.ini (c:\Server\bin\PHP\php.ini) Рассмотрим некоторые из них:
memory_limit = 128M
устанавливает максимальное количество памяти, которое может использовать скрипт
post_max_size = 8M
устанавливает максимальное количество данных, которые будут приняты при отправке методом POST
;default_charset = "UTF-8"
устанавливает кодировку (по умолчанию, строка закомментирована)
upload_max_filesize = 2M
max_file_uploads = 20
максимальное количество файлов для загрузки за один раз
max_execution_time = 30
максимальное время выполнения одного скрипта
Менять эти настройки совершенно необязательно, но полезно о них знать.
Дополнительная настройка phpMyAdmin
Новыми возможностями являются:
- показ связей между (связанными) таблицами;
- добавление информации о таблицах (начиная с версии 2.3.0 вы можете описывать в специальной таблице ‘table_info’ какая колонка будет показана во всплывающей подсказке при движении курсором над связанным ключом);
- создание PDF-схемы (начиная с версии 2.3.0 вы можете в phpMyAdmin создавать PDF страницы, показывающие связи между вашими таблицами);
- отображать комментарии столбцов (начиная с версии 2.3.0 вы можете делать комментарий с описанием каждого столбца для каждой таблицы. И они будут видны в «предварительном просмотре для печати». Начиная с версии 2.5.0, комментарии используются на собственных страницах таблиц и в режиме просмотра, показываясь как всплывающие подсказки над колонками (таблицы свойств) или встроены в заголовок таблицы в режиме просмотра. Они также могут быть показаны в дампе таблицы);
- создавать закладки (начиная с версии 2.2.0, phpMyAdmin позволяет пользователям делать закладки на запросы. Это может быть полезно для часто используемых запросов);
- история SQL-запросов (начиная с версии 2.5.0 вы можете сохранять вашу историю всех SQL запросов, которые были сделаны через интерфейс phpMyAdmin);
- дизайнер (начиная с версии 2.10.0, доступен инструмент Дизайнер; он позволяет визуально управлять связями между таблицами);
- информация о недавно использованных таблицах;
- настройка интерфейса часто используемых таблиц;
- слежение (начиная с версии 3.3.x доступен механизм слежения. Он помогает вам проследить каждую SQL команду, которая была выполнена phpMyAdmin’ом. Поддерживается запись работы с данными и запись команд. После включения, вы сможете делать версии таблиц);
- пользовательские настройки (начиная с версии 3.4.x, phpMyAdmin позволяет пользователям задавать большинство настроек и сохранять их в базе данных);
- настраиваемые меню (начиная с версии 4.1.0 вы можете создавать группы пользователей, которым будут доступны только назначенные пункты меню. Пользователь может быть определён в группу и будет видеть только пункты меню, доступные для его группы);
- спрятать/показать пункты навигации (начиная с версии 4.1.0 вы можете спрятать/показать пункты в навигационном дереве).
- и другие
Несколько скриншотов новых функций:


Установка почтовой заглушки
В каталоге C:\Server\bin\ создайте новый каталог с названием Sendmail. Теперь в этом каталоге создайте файл sendmail.php со следующим содержимым:
#!/usr/bin/env php
<?php
/* PHP. INI * [mail function] * ;SMTP = localhost * ;smtp_port = 25 * ;sendmail_from = me@example.com * sendmail_path = php.exe sendmail.php --dir C:\mail --open */
$is_windows = stristr(PHP_OS, 'WIN');
$options = getopt("", ['open', 'prepend', 'file:', 'dir:']);
$is_open = isset($options['open']);
$is_prepend = isset($options['prepend']);
$is_onefile = isset($options['file']);
$mail_dir = isset($options['dir']) ? $options['dir'] : sys_get_temp_dir() . '/mail';
$file_name = isset($options['file']) ? $options['file'] : mkname();
$file_path = $mail_dir . '/' . $file_name;
if (!is_dir($mail_dir)) { mkdir($mail_dir, 0777, TRUE); if (!is_dir($mail_dir)) { die('Mail folder [' . $mail_dir . '] not created'); }
}
$stream = $is_onefile ? PHP_EOL . str_repeat("-=", 10) . date('Y-m-d H:i:s') . str_repeat("-=", 10) . P HP_EOL : '';
while (false !== ($line = fgets(STDIN))) { //$stream .= ($is_windows ? str_replace("\n", PHP_EOL, $line) : $line); $stream .= $line;
}
if ($is_prepend && file_exists($file_path)) { $file_contents = file_get_contents($file_path); $stream .= $file_contents;
}
file_put_contents($file_path, $stream, $is_prepend ? 0 : FILE_APPEND);
if ($is_open && $is_windows) { pclose(popen("start /B notepad " . $file_path, "r"));
}
function mkname($i = 0) { global $mail_dir; $fn = 'mail_' . date('Y-m-d_H-i-s_') . $i . '.eml'; return file_exists($mail_dir . '/' . $fn) ? mkname( ++$i) : $fn;
} Откройте конфигурационный файл PHP, он размещён здесь C:\Server\bin\PHP\php.ini
. И добавьте туда одну строчку:
sendmail_path = "C:\Server\bin\PHP\php.exe C:\Server\bin\Sendmail\sendmail.php --dir C:\Server\bin\Sendmail\emails"
Сохраните файл и перезапустите сервер. Отлично, теперь все отправленные письма будут сохраняться в каталоге C:\Server\bin\Sendmail\emails\

Письма будут иметь расширение .eml
и их можно открывать, например, программой Thunderbird
. Либо обычным текстовым редактором.
Добавление PHP директории в PATH на Windows
Если этого не сделать, то могут быть проблемы с некоторыми модулями PHP, в том числе с php_curl.dll, php_intl.dll, php_ldap.dll, php_pdo_pgsql.dll и php_pgsql.dll. По крайней мере, при запуске сервера каждый раз в логах появляется следующее:
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_curl.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_intl.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_ldap.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_pdo_pgsql.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Server\\bin\\PHP\\ext\\php_pgsql.dll' - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0
Чтобы избежать этих предупреждений, нужно добавить в системные переменные среды путь до PHP.
Нажмите кнопку Пуск (или как там она называется на Windows 10?), начните набирать « Изменение системных переменных среды
» и откройте соответствующее окно настроек.

Там нажмите « Переменные среды
»:

В окне « Системные переменные
» найдите и кликните на Path
, потом нажмите « Изменить
»:

Далее « Создать
» и впишите туда « C:\Server\bin\PHP\
»:

Поднимите запись в самый вверх:

Закройте все окна с сохранением сделанных изменений.
Зависание, замедление трафика и/или ошибка сервера Asynchronous AcceptEx failed
Если ваш сервер даже без нагрузки «зависает» — не показывает веб-страницы до перезапуска, а в логах сервера ошибки Asynchronous AcceptEx failed:
[Thu Jun 05 07:24:55.747090 2014] [mpm_winnt:notice] [pid 1784:tid 444] AH00455: Apache/2.4.9 (Win64) PHP/5.5.13 configured -- resuming normal operations [Thu Jun 05 07:24:55.747090 2014] [mpm_winnt:notice] [pid 1784:tid 444] AH00456: Apache Lounge VC11 Server built: Mar 16 2014 12:42:59 [Thu Jun 05 07:24:55.747090 2014] [core:notice] [pid 1784:tid 444] AH00094: Command line: 'c:\\Server\\bin\\Apache24\\bin\\httpd.exe -d C:/Server/bin/Apache24' [Thu Jun 05 07:24:55.748090 2014] [mpm_winnt:notice] [pid 1784:tid 444] AH00418: Parent: Created child process 4952 [Thu Jun 05 07:24:55.957978 2014] [mpm_winnt:notice] [pid 4952:tid 388] AH00354: Child: Starting 64 worker threads. [Thu Jun 05 07:26:16.695036 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. [Thu Jun 05 07:26:16.695036 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. [Thu Jun 05 07:26:48.250710 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. [Thu Jun 05 07:26:48.250710 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. [Thu Jun 05 07:29:27.137784 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. [Thu Jun 05 07:29:27.137784 2014] [mpm_winnt:warn] [pid 4952:tid 1112] (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed.
То в конфигурационный файл Apache добавьте:
AcceptFilter http none AcceptFilter https none EnableSendfile off EnableMMAP off
Настройка cURL в веб-сервере Apache на Windows
Если вы не знаете, что такое cURL, значит это вам не нужно. Т.е. смело пропускайте этот шаг.
Если cURL настроена неправильно, то вы будете получать ошибки:
Fatal error: Call to undefined function curl_multi_init() in …
Ошибка curl: SSL certificate problem: unable to get local issuer certificate
Чтобы cURL работала в Apache на Windows вам нужно:
1) Обязательно добавить PHP директорию в PATH (системные переменные среды). Как это сделать сказано чуть выше: https://hackware.ru/?p=21#11
2) В файле C:\Server\bin\PHP\php.ini
должна быть раскомментирована строка extension=curl
4) В файле C:\Server\bin\PHP\php.ini
найдите строку
;curl.cainfo =
И замените её на
curl.cainfo = C:\Server\certs\cacert.pem
5) Перезапустите сервер.
Резервное копирование данных (сайты и базы данных) Apache в Windows
Вся значимая информация, т.е. файлы сайтов и их базы данных хранятся в папке C:\Server\data\
. Резервную копию на тот случай, если первоначальные данные испортились, можно делать двумя способами.
Первый способ
заключается в том, что мы просто делаем копию всех файлов (сайты+базы данных) в безопасное место. Это простой метод и для большинства он будет самым удобным.
Нужно начать с того, что остановить MySQL, поскольку пока она не остановлена, некоторые файлы баз данных открыты и не могут быть правильно скопированы:
net stop mysql
Теперь просто скопируйте в любое надёжное место папку C:\Server\data\
. Она уже содержит и базы данных (подпапка C:\Server\data\DB\
) и все сайты (подпапка C:\Server\data\htdocs\
). Когда копирование будет завершено, вновь запустите службу MySQL:
net start mysql
Если вам понадобиться восстановить все сайты, либо отдельные сайты, либо только отдельные файлы сайта, то это можно делать без остановки веб-сервера.
Если нужно будет восстановить базы данных, то вновь нужно будет остановить MySQL и вернуть исходные файлы C:\Server\data\DB\
.
Обратите внимание, что если вы полностью возвращаете исходную папку C:\Server\data\
, то происходит полный откат всех данных, т.е. все изменения, сделанные после создания резервной копии, исчезнут!
Второй метод
резервного копирования заключается в экспорте баз данных (это делается при запущенной службе MySQL) и создании бэкапа только папки сайтов C:\Server\data\htdocs\
. Этот способ чуть сложнее, но вы можете контролировать, какие именно базы данных вы желаете экспортировать. Также в таком виде (базы данных в виде файлов . SQL
и файлы сайтов) удобно переносить сайты на другой веб-сервер или хостинг. Подробности о том, как выполнять экспорт баз данных здесь
.
Если вы хотите сделать их резервную копию (например, перед обновлением сервера), то остановите службы:
c:\Server\bin\Apache24\bin\httpd.exe -k stop net stop mysql
И скопируйте в безопасное место папку C:\Server\bin\
.
Кстати, вы можете скопировать весь сервер целиком, т.е. папку C:\Server\
— в этом случае одновременно получиться резервная копия и исполняемых файлов, и данных (базы данных, сайты).
Когда копирование завершено, вновь запустите службы:
c:\Server\bin\Apache24\bin\httpd.exe -k start net start mysql
Обновление сервера
Все компоненты, составляющие веб-сервер, активно развиваются и регулярно выходят новые версии. При выходе новой версии вы можете обновить один какой-то компонент (например, PHP), или сразу несколько.
Скопируйте в безопасное место файл c:\Server\bin\Apache24\conf\httpd.conf
.
Остановите и удалите службу Apache:
c:\Server\bin\Apache24\bin\httpd.exe -k stop c:\Server\bin\Apache24\bin\httpd.exe -k uninstall
Удалите папку C:\Server\bin\Apache24\
(это не затронет ваши сайты и базы данных).
Распакуйте новый архив в C:\Server\bin\
. Скопируйте сохранённый ранее файл httpd.conf
в c:\Server\bin\Apache24\conf\httpd.conf
.
Запустите службу Apache:
c:\Server\bin\Apache24\bin\httpd.exe -k install c:\Server\bin\Apache24\bin\httpd.exe -k start
Скопируйте в безопасное место файл c:\Server\bin\PHP\php.ini
.
Удалите папку C:\Server\bin\PHP\
.
Распакуйте новый архив в C:\Server\bin\PHP
.
Скопируйте сохранённый ранее файл php.ini
в c:\Server\bin\PHP\php.ini
.
Перезапустите службу Apache:
c:\Server\bin\Apache24\bin\httpd.exe -k restart
Внимание
: при обновлении с MySQL 5 до MySQL 8 требуются дополнительные действия. Смотрите подробности в статье: « Как обновиться с MySQL 5 до MySQL 8
».
Скопируйте в безопасное место файл c:\Server\bin\mysql-8.0\my.ini
.
Остановите и удалите службу MySQL:
net stop mysql c:\Server\bin\mysql-8.0\bin\mysqld --remove
Удалите папку C:\Server\bin\mysql-8.0\
(это не затронет ваши сайты и базы данных).
Распакуйте новый архив в C:\Server\bin\
. Переименуйте папку в mysql-8.0
.
Скопируйте сохранённый ранее файл my.ini
в c:\Server\bin\mysql-8.0\my.ini
.
Запустите службу MySQL:
C:\Server\bin\mysql-8.0\bin\mysqld --install net start mysql
Дополнительный материал по настройке веб-сервера в Windows
- Самая главная информация, особенно если вы собираетесь использовать веб-сервер в качестве публичного: « Как защитить веб-сервер Apache от взлома в Windows
»
. Если у вас белый (внешний) IP и вы не сделаете так, как написано в инструкции, то вас почти наверняка взломаюти украдут все полимеры. - Настройка Apache в Windows (виртуальные хосты, резервная копия БД, батник для управления сервером)
- Как установить WordPress в Windows
- Контроль доступа к сайту (блокировка по IP)
- Как веб-сервер на своём компьютере сделать доступным для других
Разнообразная информация об Apache в Windows, о настройках и использовании на
У меня ничего не работает
Данная инструкция регулярно проверяется и тестируется с самыми новыми компонентами. Поскольку инструкция объёмная, то возникновение ошибок может быть связано с тем, что вы что-то пропустили или сделали неправильно. Для начала попробуйте всё удалить и сделать всё заново.
Если у вас что-то не работает, то просьба перед тем, как задать вопрос в комментариях, выполнить поиск по данной странице ошибок. Для этого вы можете использовать в вашем браузере и искать по части строки ошибки.
Бывает редкая ошибка, связанная с тем, что какая-то другая программа уже прослушивает 80й порт. Чтобы определить, занят ли уже порт 80 сделайте так:
1) нажмите сочетание клавиш WIN + x

2) из открывшегося списка выберете «Windows PowerShell (администратор)»
3) выполните там:
Get-NetTcpConnection -State Listen | Where-Object {$_. LocalPort -eq ’80’} | Select-Object LocalAddress,LocalPort,OwningProcess,@{Name=»Process»;Expression={(Get-Process -Id $_. OwningProcess). ProcessName}} | Format-Table

Если какая-то программа уже висит на 80-м порту, то вы её увидите.
Я собрал архив, который включает в себя все описанные здесь компоненты веб-сервера для Windows, которые уже правильно настроены. Т.е. вам достаточно просто распаковать этот архив, и вы получите готовый Apache. Подробности здесь: apache-windows.ru
Удаление сервера
Если сервер вам больше не нужен
, либо вы хотите установить его заново, остановите службы и удалите их из автозапуска последовательно выполнив в командной строке:
c:\Server\bin\Apache24\bin\httpd.exe -k stop c:\Server\bin\Apache24\bin\httpd.exe -k uninstall net stop mysql c:\Server\bin\mysql-8.0\bin\mysqld --remove
Удалите файлы сервера, для этого удалите папку C:\Server\
. Внимание, это удалит все базы данных и ваши сайты.
Как защитить веб-сервер Apache от взлома в Windows
Смотрите статью « Как защитить веб-сервер Apache от взлома в Windows
».

В процессе разработки сайта необходимо средство просмотра и тестирования продукта. Разработчику нужно понимать, как будет выглядеть верстка на запущенном сайте, как будут работать различные функции и скрипты: формы, корзина, фильтры и т. п. Однако покупать место на хостинге
для этого дорого; кроме того, придется закрывать сайт, находящийся в разработке, от внешнего мира.
Поэтому многие предпочитают разрабатывать и запускать сайт для тестирования на своем компьютере. Для этого созданы специальные пакеты программ – локальные серверы или веб-серверы. В них входит такое же ПО, какое устанавливается на хостингах. Локальные веб-серверы еще называют платформами WAMP, по первым буквам названий входящих в них приложений: A – Apache, M – MySQL, P – PHP. Буква W означает, что платформа инсталлируется на Windows.
Локальный сервер устанавливается на компьютер, на нем размещают файлы сайта. После этого к страницам сайта можно обращаться через браузер, почти так же, как это делается в сети интернет, только в URL будет указываться localhost.
Разновидностей платформ WAMP создано довольно много. Чтобы помочь вам с выбором, мы коротко рассмотрим преимущества и недостатки самых популярных локальных серверов.
Denwer

Denwer был лидером на рынке платформ для веб-разработки в 2002-2013 годах. Сейчас многие по-прежнему используют именно этот локальный сервер – особенно те, кто с него начинал. Название программы расшифровывается как «Джентельменский набор для веб-разработчика». Автор дистрибутива – россиянин Дмитрий Котеров.
- бесплатность;
- простая установка и удаление программы. Требуется только распаковать архив – дальше компоненты устанавливаются автоматически. А чтобы удалить сервер, достаточно переместить его папки в корзину;
- совсем небольшой объем занимаемого на компьютере места;
- экономное использование ресурсов машины;
- возможность размещения на флешке.
Основной недостаток сервера – отсутствие обновлений. Последняя версия программы была выпущена в 2013 году.
Кроме того, управляется эта платформа через консоль, тогда как многие пользователи предпочитают GUI.
OpenServer

Основным конкурентом Denwer стал OpenServer. Сейчас это, пожалуй, один из лучших веб-серверов. В его составе не только основные программы, но и множество полезных инструментов для разработчика: FTP FileZilla, Ghostscript, NNCron, Sendmail, Wget и т. п.
- имеет приятный и дружелюбный интерфейс;
- прост в установке;
- бесплатный;
- портативный – его можно запускать даже с флешки;
- помимо Apache имеет в составе модуль Ngnix;
- предлагает на выбор несколько видов СУБД (в том числе NoSQL) и других компонентов.
К недостаткам OpenServer с большой натяжкой можно отнести:
- отсутствие поддержки 32-битных систем. Но сейчас их мало кто использует;
- объем занимаемого места – он больше, чем у Денвер. С другой стороны, гигабайт на диске для современных машин – это мелочи.
XAMPP
Еще один локальный сервер с полным набором модулей для полноценной работы.
- кроссплатформенность (именно это обозначает буква X в названии). Программа может устанавливаться на Windows, Linux и MacOS;
- дополнительно к PHP в сборке есть Perl;
- бесплатность и открытый код;
- легкая установка;
- дружелюбный интерфейс.
XAMPP более медленный в работе, чем, к примеру, OpenServer. Это можно отнести к недостаткам. Но скорость работы можно увеличить правильной настройкой веб-сервера.
Еще один минус – нет русскоязычного интерфейса.
WampServer
- бесплатность;
- простая установка;
- есть русскоязычный интерфейс;
- наличие 64-разрядной и 32-разрядной версий;
- в архиве доступны старые версии – для Windows XP, например;
- есть активное действующее сообщество, в котором можно получить помощь по проблемам с настройками.
Главный недостаток WampServer – более сложная настройка по сравнению с аналогами. Часто для этого приходится вносить изменения в конфигурационные файлы.
Кроме того, для установки программе понадобятся библиотеки Microsoft C/C++, что также нельзя назвать преимуществом.
AMPPS
AMPPS – это мощная бесплатная платформа для веб-разработки. Стандартные локальные серверы обычно предлагают только необходимые компоненты и небольшой набор дополнительных инструментов. В AMPPS вы найдете более 400 различных программ и приложений. Создатели платформы также позаботились о том, чтобы любое приложение можно было установить всего в несколько кликов.
Этот веб-сервер обладает целым рядом преимуществ:
- кроссплатформенностью. A MPPS – это не только WAMP, но и LAMP, MAMP – платформа может устанавливаться также на Linux и macOS системах;
- встроенным FTP-сервером;
- минимумом действий пользователя при установке;
- простотой использования даже для новичков;
- быстрой и простой установкой компонентов – CMS, форумов, вики;
- возможностью развернуть несколько баз данных;
- возможностью одновременной установки приложений сразу в нескольких доменах.
К недостатку сервера можно отнести отсутствие поддержки русского языка в интерфейсе.
The Uniform Server
Этот локальный сервер отличается:
- предельной легкостью – весит всего около 24 МБ;
- простой установкой;
- минималистичным интерфейсом.
Есть и недостатки. Все действия в The Uniform Server выполняются, в основном, через консоль. Кроме того, язык интерфейса только английский.
Devilbox
Локальный сервер Devilbox предоставляет разработчику не только обычный пакет приложений (WAMP, LAMP). В сборке есть программы, которые нужны для развертывания MEAN-платформы: MongoDB, Express.js, Angular.js, Node.js. Такая среда используется для разработки, ориентированной на JavaScript.
- поддержка https;
- работает на всех типах операционных систем – Windows, Linux, MacOS;
- после установки почти ничего не нужно настраивать – все сразу работает;
- можно запускать сколько угодно проектов, ограничений нет;
- много дополнительных инструментов – DNS-сервер Bind, просмотрщик отправленных писем, утилита для подключения SSL-сертификата и т. п.
- Devilbox – это докер-стек, поэтому предварительно понадобится установить Docker;
- не самый простой процесс установки.
Winginx
Этот локальный сервер характеризуется неплохим разнообразием модулей, входящих в сборку. В нем есть Ngnix, несколько видов СУБД на выбор (MySQL, MongoDB, Redis), есть Node.js.
- в магазине приложений можно бесплатно скачать популярные CMS и фреймворки;
- автоматическая проверка актуальности установленных компонентов и их обновление;
- интерфейс на русском языке;
- есть просмотрщик локальной почты;
- есть система управления задачами и контроля рабочего времени.
Основной недостаток Winginx – сложность работы с логами.
Заключительный совет
Выберите несколько локальных серверов с подходящими вам параметрами, поочерёдно установите и протестируйте их. Удобство и понятность интерфейса, наличие нужных для ваших задач инструментов – все это, по нашему мнению, можно оценить только при использовании.
При разработке веб-сайтов часто удобнее работать не с «настоящим» веб-сервером Интернет-провайдера, а сделать его программную копию, эмулировать этот веб-сервер на компьютере разработчика. Такую эмуляцию и называют локальным сервером.
Локальный сервер — что это?
Локальный сервер – это набор программного обеспечения, который выполняет функции сервера, работающий на локальном компьютере или в локальной сети предприятия.
Такой подход может быть полезен, например, для разработчиков веб-сайтов, чтобы вначале создать общую структуру сайта, отладить его работу и отработать его дизайн у себя на компьютере, а затем перенести готовый к использованию веб-сайт на внешний веб-сервер, где он станет доступным для широкого круга пользователей.
Локальный сервер содержит, в принципе, то же программное обеспечение, что и обычный веб-сервер, только работает в пределах локальной сети или отдельного компьютера.

Local server и localhost
Иногда локальный сервер (local server) могут называть localhost, хотя это не совсем верно. Localhost – это компьютер пользователя в сети, на котором осуществляется доступ к удалённому веб-сайту или приложению. Однако, этот веб-сайт или приложение могут физически располагаться на компьютере пользователя и работать по тем же протоколам, как и при удалённом доступе.

