Cuando hablamos de publicar un sitio web en Internet desde tu propia máquina o servidor, lo más normal es que NGINX y Apache sean las soluciones más utilizadas. Ambos son servidores web robustos, que cuentan con una gran comunidad y una amplia documentacion.
Sin embargo, si estás utilizando Hugo para generar tu sitio estático, Hugo Server es más que suficiente, especialmente si buscas simplicidad, velocidad y facilidad de desarrollo.
¿Qué es Hugo y qué es Hugo Server?#
Hugo es un generador de sitios estáticos, escrito en Go. Convierte tu contenido escrito en Markdown y tus plantillas en un sitio web HTML listo para ser publicado.
Hugo Server, por otro lado, es un servidor de desarrollo incorporado que permite visualizar y probar tu sitio localmente. Tiene soporte para recarga automática (live reload) y que también puede ser útil si quieras publicar rápidamente sin configurar un servidor web completo.
Ventajas de usar hugo server
directamente#
Simplicidad total#
No necesitas instalar ni configurar un servidor web adicional. Un solo comando (hugo server --bind 0.0.0.0 --baseURL http://tu-ip:1313/
) y tu sitio está listo y accesible en la red.
Velocidad de despliegue#
Ideal para proyectos personales, puedes tener el sitio online en segundos.
Recarga en vivo (live reload)#
Cualquier cambio que hagas en el contenido o diseño se refleja automáticamente en el navegador sin tener que refrescar manualmente.
¿Por qué NO usar NGINX o Apache?#
Cuando necesitas soporte para PHP, NGINX o Apache siguen siendo las mejores opciones, pero si:
Solo necesitas servir HTML/CSS/JS estáticos
Quieres evitar complicaciones técnicas
Buscas portabilidad y rapidez
Entonces usar hugo server
puede ser más que suficiente.
¿Puedo usar Hugo Server en producción?#
Aunque Hugo Server está diseñado principalmente para desarrollo, puedes usarlo para servir sitios públicos como:
Proyectos personales o portafolios.
Sitios de documentación internos o de acceso limitado.
Presentaciones en vivo o demos temporales.
Servidores caseros o Raspberry Pi para autoalojamiento básico.
Por ejemplo con el comando:
hugo server --bind 0.0.0.0 --baseURL http://mi-ip-publica:1313/ --appendPort=false --disableLiveReload
Puedes servir tu sitio web hacia el exterior. Solo debes de abrir el puerto correspondiente en tu firewall o router y redirigirlo hacia el servidor.
Hugo Server en Unraid#
Este sitio web esta autoalojado en un servidor Unraid mediante la aplicacion Hugo disponible en las Community Applications pero editando la plantilla para utilizar el repositorio HugoMods
Por defecto la versión de la plantilla disponible de Hugo en Unraid instala Hugo desde el repositorio de klakegg cuya ultima versión en el momento de escribir este articulo es la 0.111.3, yo he instalado una versión extendida de Hugo más actualizada que esta disponible en el repositorio de HugoMods
Cambia a la vista avanzada y modifica el repositorio para utilizar la versión de HugoMods
Donde:
- Repositorio: hugomods/hugo:exts
- Argumentos adicionales: server -e production -b https://elblogdelazaro.org –appendPort=false –minify
- Cambia El Blog de Lázaro por la URL de tu nombre de dominio
appendPort=false
no agregua el:1313
al final de la dirección URLminify
minifica el HTML, CSS y JS**, es decir, que lo hace más liviano suprimiendo espacios en blanco, etc- /mnt/user/appdata/hugo/site es la ubicación donde se ubica el sitio web
Conclusión#
Si buscas una forma sencilla y rápida de servir un sitio web estático, Hugo Server puede ser una alternativa frente a soluciones tradicionales como NGINX o Apache.
No reemplaza todas sus funcionalidades, pero para un sitio personal o de bajo tráfico, es todo lo que necesitas.
Espero que te haya gustado, pasa un gran día 🐧