Мини web сервер для windows

  • Overview

Simple, minimalist web server for testing and debugging purposes. Runs as a Windows application only.

It’s free for commercial and non-commercial use.

The server is extremely simple to use. Just unpack the ZIP file, run the executable, and that’s all. You can tweak the configuration later if needed.

Download — Tiny Web Server Application

  1. Download and unpack the ZIP package.
  2. Optional: edit RebexTinyWebServer.exe.config.
  3. Run RebexTinyWebServer.exe
  4. Press Start button to begin serving files via HTTP/HTTPS.
  • Supports HTTP and HTTPS protocols.
  • Runs as a stand-alone Windows application (not a service).
  • TLS 1.3/1.2 support and up-to-date TLS cipher support.
  • Legacy TLS 1.1/1.0 supported as well.
  • Detailed activity log (optional raw communication logging).
  • Free to use, even for commercial purposes.
  • Runs on any Windows OS with .NET Framework 4.6 or higher.
  • No setup needed. Just unpack the ZIP file and run.
  • Local web development and testing

    Need to test your web page now? Not willing to wait days or weeks
    for your tech-support department to install a testing web server?

    Don’t want to spend hours learning how to configure a full-features web
    server yourself?

    Get Tiny Web Server and start testing your HTML pages over HTTPS in minutes.

  • Need temporary local web server for connectivity testing

    Install Tiny Web Server, run it and try connecting from other PCs and devices in your local network.

  • Need a production web server

    Tiny Web Server is meant for testing and debugging purposes only.
    It is not intended for Internet-facing endpoints.

Tiny Web Server runs on:

  • Windows 11, 10.
  • Windows Server 2019, 2016, or 2012.
  • Windows 8.1, 7, Vista, Server 2008. You might have to install .NET Framework 4.6 first when using the server on these legacy systems.

The server can be configured using RebexTinyWebServer.exe.config file.
This configuration file must be placed in the same folder as the executable file.

httpPort
TCP port on which the server listens for HTTP connections.
If not specified, the HTTP is disabled.
httpsPort
TCP port on which the server listens for HTTPS connections.
If not specified, the HTTPS is disabled.
webRootDir
Root data folder. If the folder does not exist,
the server creates it and puts some test data there.
Default is ./wwwroot.
defaultFile
Default file to be sent if the request URL points to a directory.
Default is index.html.
serverCertificateFile
Path to the server certificate with associated private key.
PKCS #12 (.pfx file extension) format is supported.
A new self-signed certificate is generated if it does not exist:

  • .pfx file is intended to be used on the server.
  • .cer file is intended to be installed on the client into
    the «Trusted Root Certification Authorities» store.

For more information, read our
Introduction to Public Key Certificates.
Default is server-certificate.pfx.

serverCertificatePassword
Password for the server certificate.
tlsVersions
Possible values: TLS13, TLS12, TLS11, TLS10, SSL30.
(SSL30 will not work if TLS13 is enabled.)
Default is TLS13, TLS12, TLS11, TLS10.
legacyMode
If set to true, the server operates in legacy mode with vulnerable cipher suites enabled
to achieve better compatibility with legacy devices.
Also the initial server certificate is generated with 512-bit RSA key and signature hash algorithm is SHA-1
(instead of 2048-bit RSA key with SHA-256).
Default is false.
autoStart
If set to true, the server starts when application is started.
No need to press the button.
Default is false.
decodeUri
If set to true, the server decodes received URI before mapping it to a physical path.
Default is true.

Note:
To minimize possible «port in use» conflict, the initial values of ports are assigned to 1180 for HTTP and 11443 for HTTPS.
If you need to test your web client with standard ports, please modify httpPort and httpsPort
in the configuration file to 80 for HTTP and 443 for HTTPS and make sure there is no other service using those ports.

Rebex Tiny Web Server is free for commercial and non-commercial use. See the End User License Agreement (EULA) for details.

1.0.5 (2025-03-13)

  • Upgraded Rebex TLS library.

1.0.4 (2024-11-13)

  • Upgraded Rebex TLS library.

1.0.3 (2024-04-22)

  • Fixed config paths (relative to executable instead of current directory).
  • Improved log window and fixed occasional beeping.
  • Initial log level made configurable.

1.0.2 (2024-01-11)

  • Added possibility to configure enabled TLS versions (see tlsVersions config key).
  • Added better compatibility with legacy devices (see legacyMode config key).
  • Extended list of known file extensions to provide better Content-type to the client.

1.0.1 (2023-07-03

  • Added URI decoding to map physical paths correctly (see decodeUri config key).
  • Added support for UNC paths.
  • Upgraded Rebex TLS library.

1.0.0 (2022-02-22)

  • First version.

Contact

Have a feature request or a question? Contact us or ask
at Rebex Q&A Forum.

Локальные серверы позволяют запускать свой сайт без использования хостинга, прямо на домашнем компьютере. Это может пригодиться для детального тестирования, а также в процессе разработки. Ничего не помешает накатить туда CMS и взаимодействовать с базами данных. Вся сложность заключается в выборе самой программы, которая и выполняет роль локального сервера. Подходящих вариантов существует огромное количество, и каждый из них обладает своими особенностями, так что сказать, какой локальный сервер лучше других, достаточно сложно.

Давайте детально разберемся в этом вопросе, рассмотрев несколько самых популярных представителей. Итак, топ лучших локальных серверов.

OpenServer

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

Использование OpenServer в качестве локального сервера

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

Распространяется OpenServer бесплатно, а разработчики предлагают лишь добровольно поддержать проект. Перейти к скачиванию этой программы для Windows можно на официальном сайте.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться


Denwer

Denwer один из самых популярных в свое время локальных серверов, считавшийся монополистом на отечественном рынке, поскольку ни одно из существующих на тот момент решений не смогло составить ему конкуренцию. Этот веб-сервер прост в установке и практически не занимает места на компьютере. С управлением программой разберется даже начинающий пользователь.

Использование Denwer в качестве локального сервера

Однако проект долгое время не обновлялся, что сказалось на его развитии в дальнейшем. Еще одним недостатком, который может стать решающим для некоторых пользователей, будет отсутствие графического интерфейса, из-за чего приходится все действия выполнять через консоль. Сейчас Denwer можно скачать с официального сайта.

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

WampServer

Следующий доступный веб-сервер называется WampServer. Он тоже популярен в определенных кругах пользователей. Его преимущество заключается в простоте установки и нетребовательности к системе, что позволяет нормально взаимодействовать с программой на любом компьютере. Присутствует поддержка всех необходимых компонентов, поэтому с настройкой и запуском локального сервера проблем не возникнет.

Использование WampServer в качестве локального сервера

Однако есть у WampServer и ряд недостатков, которые в большинстве своем связаны с настройкой. Для этого придется редактировать локальные файлы, а также заморочиться с правильным конфигурированием MySQL. Распространяется этот инструмент бесплатно.

XAMPP

XAMPP полноценный комплект всего программного обеспечения, которое необходимо для развертывания локального сервера на домашнем компьютере. Плюсами этого инструмента можно считать бесплатное распространение и поддержку абсолютно всех пакетов, включая PHP, MariaDB и Perl.

Использование XAMPP в качестве локального сервера

Из минусов можно отметить только медленную работу в сравнении с аналогами, однако при правильной настройке эта проблема ликвидируется. Для начала использования XAMPP нужно перейти на официальный сайт и скачать исполняемый файл.

AMPPS

AMPPS будет сложнее использовать как полноценный веб-сервер из-за тонкостей в настройке, однако здесь есть перечень всех требуемых приложений, позволяющих разрабатывать на PHP, подключая при этом MySQL. 

Использование AMPPS в качестве локального сервера

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

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

The Uniform Server

Одна из самых легких версий локального сервера, предназначенная для компьютеров под управлением Windows. Это ее главное преимущество, ведь пользователю не придется скачивать огромное количество файлов, которые занимают дисковое пространство.

Использование The Uniform Server в качестве локального сервера

К недостаткам The Uniform Server относится то, что с самой программой придется взаимодействовать практически всегда через консоль, а в графическом интерфейсе выполняется всего несколько действий. 

Если вы решили попробовать это решение, загрузите его с официального сайта и начните бесплатное использование.

Devilbox

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

Использование Devilbox в качестве локального сервера

В Devilbox все уже настроено, поэтому сразу после установки можно перейти к полноценной разработке и тестированию. Однако недостатком можно считать принцип установки, ведь он немного сложнее, нежели у конкурентов. Ознакомиться с ним и скачать все необходимые файлы можно на http://devilbox.org/.

Winginx

Если вы давно искали веб-сервер, который функционировал бы в среде NGINX, но не могли найти подходящий вариант, обратите внимание на Winginx. Это комплексный инструмент, поддерживающий разные языки программирования и несколько систем управления базами данных.

Использование Winginx в качестве локального сервера

Из недостатков стоит выделить необходимость ручной сборки, а также ограниченную гибкость в сравнении с конкурентами, функционирующими на Apache. Winginx доступен на сайте разработчика.

Это далеко не все популярные локальные серверы, но именно эти, я считаю, заслуживают большего внимания. К тому же все они распространяются бесплатно. Какой из этих локальных серверов лучше, решать вам. 

VDS Timeweb арендовать

miniweb-avih

Small, cross-platform HTTP server

This project is not maintained, and should not be considered secure.

  • This is a fork of http://miniweb.sourceforge.net/ , with the following enhancements:

    • Enhanced directory listing with sortable columns (requires js, else the normal listing).
    • Unicode support on windows — command line and directory listing.
    • Better support for large files in download (correct size at the HTTP header) and directory listing
      (displayed size is now correct).
    • Linux/OS X/etc: faster shutdown, and less wait before next successful startup.
    • POST support disabled for now.
    • Easier build with custon $CC, and other minor improvements. The MSVC project files might be stale.
    • Name changed to Miniweb-avih.
  • License: «GNU Library or Lesser General Public License version 2.0 (LGPLv2)».
    See License note.

  • A snapshot of the original repository
    svn rev 208 on which this fork is
    based is at branch svn-orig-rev-208 of this repository (the original project seems
    unmaintained since 2013.).

[Original project description below]

MiniWeb

MiniWeb is an embeddable, cross-platform, small-footprint HTTP server
implementation, implementing basic GET and POST requests as well as request
handling dynamic content generating. It works on x86 (Windows/Linux),
ARM, MIPS and any posix platforms, either embedded or standalone.

Features

  • small footprint HTTP server written in C
  • GET & POST actions with basic HTTP authentication
  • user-defined request handler routines
  • cross-platform compatibility
  • basic HTTP audio and video streaming
  • serial UART to HTTP gateway

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

На многих наших тренингах с домашними заданиями (программирование для тестировщиков на Java, C#, Python, разного уровня сложности курсы по Selenium, курсы по тестированию производительности веб-приложений) самым первым заданием для учеников является подготовка учебного тестового стенда, в том числе установка локального веб-сервера, на котором впоследствии разворачиваются учебные приложения.

Типовая инфраструктура для развертывания современных веб-приложений включает в себя как минимум три составных элемента:

  • интерпретатор языка программирования, на котором реализовано веб-приложение (PHP, Python, Ruby, .Net, Java, …),
  • база данных, в которой приложение хранит данные (MySQL, Postgress, MS SQL Server, Oracle, …),
  • веб-сервер, который принимает запросы от клиентов и перенаправляет их приложению (Apache, Nginx, IIS, …)

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

Но есть исторически сложившаяся тройка, пользующаяся особой популярностью – Apache + MySQL + PHP.

Для неё существуют готовые инсталляционные пакеты “три в одном”, которые позволяют устанавливать компоненты не по отдельности, а все разом. Иногда эти пакеты включают также некоторые дополнительные компоненты.

Из множества подобных пакетов мы выбрали XAMPP, потому что он предлагает инсталляторы для трёх основных операционных систем – Windows, Linux, OS X, в отличие от большинства конкурентов, ориентированных как правило только на какую-нибудь одну из платформ.

В этой инструкции будет описана установка XAMPP на операционную систему Windows. Процесс установки для других операционных систем может несколько отличаться.

Часть 1: делай раз, делай два, делай три!

1. Отправляемся на сайт https://www.apachefriends.org/ru/index.html, выбираем дистрибутив для нужной операционной системы, и загружаем его:

2. Запускаем инсталлятор и следуем инструкциям визарда. Наибольший интерес представляет шаг, на котором выбирается набор устанавливаемых компонентов:

Ясно, что нужно обязательно выбрать базовые элементы “тройки” – Apache + MySQL + PHP. Но в дополнение к этому можно установить ещё какие-то из предлагаемых компонентов:

  • FileZilla FTP Server – как следует из названия, это FTP-сервер, он может быть полезен, если, например, XAMPP устанавливается на виртуальную машину, тогда файлы устанавливаемых веб-приложений туда удобно будет загружать по протоколу FTP
  • Mercury Mail Server – опять таки, из названия ясно, что сервер для работы с электронной почтой, поддерживает протоколы POP3, IMAP, SMTP, но лично мне он кажется неудобным, поэтому я предпочитаю его не ставить, а использовать что-нибудь альтернативное
  • Tomcat – это сервер приложений для JavaEE, его имеет смысл устанавливать только в том случае, если вы собираетесь развёртывать веб-приложения, написанные на Java
  • Perl – язык программирования, который одно время был достаточно популярен среди веб-разработчиков, но в последнее время используется достаточно редко
  • phpMyAdmin – веб-интерфейс для управления СУБД MySQL, имеет смысл его установить, потому что для локального веб-сервера это, наверное, самый удобный способ конфигурирования СУБД MySQL
  • Webalizer – это веб-прилрожение для анализа лог-файлов сервера и сбора статистики, для локального веб-сервера вещь бесполезная, если только вы не собираетесь использовать эту информацию, например, при нагрузочном тестировании
  • Fake Sendmail – это “неполноценная” реализация утилиты sendmail для Windows, с большой вероятностью она вам не пригодится, потому что почту из веб-приложений обычно можно отправлять и без этой утилиты

3. После выбора компонентов на следующем шаге нужно выбрать директорию, в которую будет установлен XAMPP.

Рекомендуется использовать директорию, путь к которой не содержит пробелов и все названия директорий в этом пути в именах содержат только символы латинского алфавита или цифры. В общем, избегайте “плохих” символов в пути.

И после этого шага, наконец, начинается установка.

4. Когда процедура установки завершится, запускаем панель управления XAMPP.

В ней нужно активировать два модуля – Apache и MySQL, нажав две соответствующие кнопки Start:

Если всё пройдёт успешно, названия модулей окрасятся в зелёный цвет и станет активной кнопка Admin для каждого из них:

5. Осталось только зайти браузером по адресу http://localhost/ и убедиться, что веб-сервер действительно работает:

6. Затем зайти браузером по адресу http://localhost/phpmyadmin/ и убедиться, что СУБД MySQL тоже работает и доступна:

Теперь на сервер можно устанавливать веб-приложения.

Если у вас всё запустилось и в браузере открылась приветственная страница XAMPP – дальше можно не читать.

Вся оставшаяся часть статьи посвящена рассмотрению различных проблем и возможных методов их решения.

Часть 2. Что-то пошло не так…

F1. Не запускается MySQL

Наиболее вероятная причина – занят порт 3306, при этом в окне информации в панели управления XAMPP можно будет увидеть, какое именно другое приложение заняло порт.

Скорее всего это связано с тем, что у вас уже установлен вне XAMPP и запущен другой экземпляр СУБД MySQL:

Что делать?

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

Однако в этом случае вам, вероятно, придётся настроить логин и пароль для доступа к этому существующему экземпляру СУБД MySQL из приложения phpMyAdmin.

Нажимаем кнопку Config напротив модуля Apache и из выпадающего меню выбираем пункт phpMyAdmin:

В текстовом редакторе открывается конфигурационный файл приложения phpMyAdmin, в котором нужно указать логин и пароль администратора СУБД:

(Если текстовый редактор показывает текст в “скомканном” виде, см. ниже раздел F3)

Сохраняем внесённые в файл изменения и заходим браузером по адресу http://localhost/phpmyadmin/, чтобы убедиться, что СУБД MySQL доступна.

F2. Не запускается Apache

И опять наиболее вероятная причина – занят порт 80 или 443, при этом в окне информации в панели управления XAMPP можно будет увидеть, какое именно другое приложение заняло порт:

На этот раз “конкурентов” больше.

F2.1 Port 80 in use by “C:\Program Files (x86)\Skype\Phone\Skype.exe”

Как это ни странно звучит, порты 80 и 443 часто занимает Skype, причём это ему совершенно не нужно для нормальной работы. Идём в настройки Skype, отключаем, после чего перезапускаем скайп – и порт свободен:

К сожалению, отключить эту настройку можно не во всех версиях Skype. Если вы являетесь счастливым обладателем Windows 8 и используете так называемую версию “Skype for modern Windows”, то вам не повезло – в ней невозможно отключить использование портов 80 и 443.

Что делать?

Можно либо установить версию “Skype for Windows desktop”, в которой присутствует нужная настройка, либо перенастроить Apache на использование других, незанятых, портов, как это описано чуть ниже, в разделе F2.3.

F2.2 Port 80 in use by “Unable to open process” with PID 4

Это означает, что у вас на компьютере запущен сервер Microsoft IIS (Internet Information Services).

Если он вам не нужен – можно его отключить, а вместо него запустить XAMPP.

См. инструкцию по отключению IIS на официальном сайте Microsoft

Если IIS вам нужен, тогда придётся один из серверов (либо IIS, либо Apache) перенастроить на использование других, незанятых, портов, как это описано в следующем разделе.

F2.3 Port 80 in use by …

Кроме двух описанных выше ситуаций, порты может занимать какой-то другой веб-сервер.

Тут возникает резонный вопрос – если у вас уже есть веб-сервер, может быть не стоит устанавливать XAMPP, а продолжить использовать уже имеющийся?

Другой вариант – остановить или полностью удалить ранее использовавшийся сервер, и вместо него спокойно установить XAMPP.

Ну и наконец, если вы по каким-то причинам хотите оставить оба веб-сервера, не можете перенастроить Skype или IIS – тогда придётся разрешить конфликт портов и перенастроить Apache, входящий в состав XAMPP на другие порты.

Сначала надо выбрать два свободных порта, которые будут использоваться вместо 80 и 443.

Чтобы посмотреть, какие порты заняты, можно воспользоваться встроенной в XAMPP утилитой Netstat:

Предположим, выбраны незанятые порты 8080 и 8443.

Изменения нужно внести в трёх местах.

Сначала меняем общие настройки. Там указываются порты, по которым XAMPP будет проверять, “живы” ли его модули:

Но основные изменения нужно внести в конфигурационные файлы самого модуля Apache. Необходимо модифицировать два файла – httpd.conf и httpd-ssl.conf.

Нажимаем кнопку Config напротив модуля Apache и из выпадающего меню выбираем нужный пункт:

В текстовом редакторе открывается конфигурационный файл, в котором нужно найти инструкцию Listen и изменить порт на выбранный:

(Если текстовый редактор показывает текст в “скомканном” виде, см. ниже раздел F3)

Сохраняем файл и повторяем аналогичные действия для второго конфигурационного файла.

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

Единственное неудобство в этом случае заключается в том, что нестандартный номер порта придётся всегда указывать в адресе – теперь ваш веб-сервер будет доступен по адресу http://localhost:8080/

F3. Конфигурационные файлы показываются в “скомканном” виде.

Используйте вместо notepad.exe какой-нибудь более “интеллектуальный” текстовый редактор, например, Notepad++:

F4. Apache успешно запустился, но по адресу http://localhost/ находится не XAMPP

Если в настройках Apache указан не стандартный порт 80, а какой-то альтернативный, в этом случае нужно явно указать номер порта в адресе, например, http://localhost:8080/

F5. Apache успешно запустился, но адрес http://localhost/ не открывается в браузере

Возможные причины:

  • система не знает, что означает сетевое имя localhost, либо
  • в браузере указаны настройки прокси, которые не позволяют устанавливать соединения с локальным сервером.

Чтобы исключить первую причину, попробуйте в адресе указать не сетевое имя, а IP-адрес: http://127.0.0.1/ (или http://127.0.0.1:8080/ при использовании порта, отличного от стандартного).

Если получилось открыть приветственную страницу XAMPP – значит, проблема на уровне системных сетевых настроек.

Открываем в любом текстовом редакторе файл C:\windows\system32\drivers\etc\hosts и добавляем туда строчку

127.0.0.1 localhost

Имейте в виду, что для модификации этого файла потребуются права администратора.

После того, как это изменение внесено – вновь пробуем использовать в адресе сетевое имя, то есть открываем в браузере адрес http://localhost/, теперь всё должно сработать правильно.

Вторая возможная причина, из-за которой даже по IP-адресу сервер не удаётся открыть – настройки браузера, согласно которым все запросы направляются в прокси-сервер. Нужно сделать так, чтобы запросы на адрес 127.0.0.1 туда не отправлялись, а шли прямиком к локальному веб-серверу.

Браузеры Internet Explorer и Chrome используют системные настройки прокси, вот так они должны выглядеть (стоит галочка “Не использовать прокси-сервер для локальных адресов”):

Браузер Firefox может иметь свои собственные настройки, отличные от системных, тогда нужно вписать адрес 127.0.0.1 в список исключений:

После этого браузер должен найти локальный веб-сервер и открыть его приветственную страницу.

Вот и всё, теперь уж точно сервер работает и можно переходить к установке приложений!

TinyWeb Server

TinyWeb is an extremely small (executable file size is 53K), simple (no configuration other than through the command line) and fast (consumes a minimum of system resources) Win32 daemon for regular (TCP/http) and secure (SSL/TLS/https) web-servers.

This program is FREE for commercial and non-commercial use. The only restriction is that the copyright holder must be acknowledged for the development of this code. See the LICENCE file for more details. As this has been in essence an unpaid effort there is no guarantee of support (you get what you pay for :-)), however we do perform a limited amount of consulting.

TinyWeb was written by Maxim Masiutin using Delphi. Source code is also provided. This program may be freely distributed, provided the distribution package is not modified. No person or company may charge a fee for the distribution of this program without written permission of the copyright holder.

  • Features
  • Installing
  • Download
  • TinySSL
  • History
  • FAQ
  • Testimonials

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Skype в реестре windows
  • Windows vista business russian oemact acer incorporated
  • Kernel thread priority floor violation windows 10 как исправить
  • Быстрые команды на клавиатуре windows 11
  • Windows add virtual network adapter