Минимальный веб-сервер с открытым исходным кодом?

Я думаю о следующих шагах для проекта, который я написал. В настоящее время это настольное приложение, которое управляет устройством последовательного порта.

Я рассматриваю возможность подключения браузеров к некоторому процессу для получения обновлений "почти в реальном времени" о состоянии и т.д. устройства. Возможно также разрешить управление клиентом браузера.

Я бы предпочел не писать собственный веб-сервер с нуля, и это был бы очень ограниченный веб-сервер.

Любые предложения о том, где искать?

Я бы предпочел реализацию С++ или С#.

Ответ 2

Я не знаю HTTP-сервера С#, но вы могли бы сделать свой собственный довольно быстро (см. http://www.codeplex.com/webserver).

Как и было предложено, lighthttpd может сделать трюк.

Я бы также рекомендовал simpleweb, который является очень легким и мощным http-сервером, написанным на Java.

Ответ 3

Я слышал хорошие вещи от друга о lighthttpd

Ответ 4

nginx очень легкий и очень масштабируемый (например, см. Wordpress story для громкого дела). POSIX-только.

Ответ 5

Посмотрите проект моего веб-сервера: http://www.codeplex.com/webserver Он содержит вещественную ветвь для минимальной.

Ответ 6

Рассмотрите возможность взглянуть на класс System.Net.HTTPListener. Он реализует HTTP-прослушиватель, который позволяет очень легко реагировать на запросы HTTP от клиентов. Поскольку вам не нужен полноценный HTTP-сервер, это, вероятно, путь!

Ответ 7

Еще несколько советов:

  • NancyFX (поиск собственного хоста)
  • Kayax

Ответ 8

Вот еще одна альтернатива, которую я написал в прошлом году и хорошо служил мне.

EmbedIO: https://github.com/unosquare/embedio

Я использую его в основном для создания сервисов RESTful на малиновой Pi (soft-float). Он также лицензировал MIT.

Ответ 9

Когда вы запускаете веб-проект из Visual Studio, вы обычно запускаете его через Cassini2. Это также загружаемый проект.

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

Или NSoftware также имеет несколько сетевых авизо. Они являются коммерческими, но хорошо документированы, и мне повезло с их поддержкой (но для этого было какое-то время).

Ответ 10

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

Ответ 12

Я не знаю, будет ли соответствовать вашему проекту, но http://www.tntnet.org/ выглядит многообещающим. Кроме того, вы можете найти библиотеку http-сервера, в которую вы можете добавить свой собственный код для создания веб-сервера с встроенным приложением. Есть много (например, libmicrohttpd), что не стоит перечислять здесь, не зная вашего проекта.

Ответ 13

Вы также можете попробовать nodejs для создания веб-сервера.

Есть примеры, доступные при реализации простой