Estoy buscando un servidor web HTTP autónomo que pueda implementar en máquinas Windows y Linux para servir archivos estáticos.
Tiene que ser pequeño y básico. Preferiblemente, podría iniciarlo (y apagarlo) desde una línea de comando, especificando en qué puerto se ejecutaría y especificando a qué directorio apuntaría como su directorio de inicio.
Alguien sabe de alguno como este?
Sugeriría embarcadero . Estoy en el proceso de incrustar esto en una aplicación. Está basado en Java y es compatible con varias plataformas.
También puede incrustar Jetty dentro de su aplicación con bastante facilidad.
Características
EDITAR: terminé usando la versión integrada de Tomcat , así que lo agregaré como recomendación. Simple y fácil de usar desde el código. Y según OP, se puede iniciar desde la línea de comando .
Yo personalmente he usado Mongoose . Es totalmente multiplataforma y es un ejecutable autónomo. Sirve archivos estáticos y, de forma predeterminada, sirve desde el directorio en el que lo inicia. También puede pasarle una ruta en la línea de comando si desea servir un directorio diferente.
Algunas alternativas.
Ambas opciones son livianas, pero potentes, totalmente multiplataforma y se pueden instalar de forma portátil (es decir, no necesitan permisos de administrador para instalar)
Puede instalar Apache después de instalar Cygwin. https://cygwin.com/
Si desea algo que probablemente sea un poco más fácil de instalar y configurar, puede probar WAMP. http://www.wampserver.com/en/
También está XAMP, que es casi lo mismo. https://www.apachefriends.org/index.html
No estoy seguro de por qué necesitaría uno que pueda funcionar en cualquier entorno. Personalmente, configuraría una VM de Linux en VirtualBox usando Puphpet para ejecutar un servidor web en Windows si estuviera atascado en Windows de alguna manera.
Dicho esto, recomendaría Nginx . Es principalmente para Linux. Para eso fue diseñado y así sucesivamente. Sin embargo, tienen una versión nativa de Windows que no requiere cygwin para ejecutarla.
He estado bastante contento con MiniWeb .
MiniWeb es una implementación de miniservidor HTTP escrita en lenguaje C, que presenta un bajo consumo de recursos del sistema, alta eficiencia, buena flexibilidad y alta portabilidad. Es capaz de servir a múltiples clientes con un solo hilo, soportando métodos GET y POST, autenticación, contenidos dinámicos (página web dinámica y sustitución de variables de página) y carga de archivos. MiniWeb se ejecuta en el sistema operativo compatible con POSIX, como Linux, así como en Microsoft Windows (Cygwin, MinGW y compilación nativa con Visual Studio). El tamaño binario de MiniWeb puede ser tan pequeño como 20 KB (en Linux x86). El objetivo del proyecto es proporcionar un servidor HTTP rápido, funcional y de bajo consumo de recursos que se pueda integrar en otras aplicaciones (como una biblioteca estática o dinámica), así como un servidor web independiente.
Mella