MirrorNest
← Все руководства

Hugo static site with Nginx

Hugo is one of the fastest static site generators available — write content in Markdown, generate a complete site in milliseconds, and serve the resulting plain HTML files with Nginx for maximum speed and minimal attack surface.

Система: Ubuntu 22.04 LTS / 24.04 LTSstatic-site-generatorNginxMarkdownОфициальный сайт ↗Официальная документация ↗
Это руководство составлено на основе официальной документации Hugo static site with Nginx, ссылка на которую есть выше — всегда сверяйте точные названия пакетов/версий там перед запуском этих команд на рабочем сервере, так как версии дистрибутива и проекта со временем меняются.
  1. 1Install Hugo

    sudo apt update
    sudo apt install -y hugo
  2. 2Create and build a new site

    Hugo scaffolds a full project structure, and `hugo` (with no arguments) builds it into a `public/` folder of plain static HTML/CSS/JS.

    hugo new site mysite
    cd mysite
    git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke.git themes/ananke
    echo "theme = 'ananke'" >> hugo.toml
    hugo
  3. 3Serve the built site with Nginx

    Point Nginx's root directly at Hugo's public/ output folder -- there's no PHP, no database, and nothing else running at request time.

    sudo apt install -y nginx
    sudo cp -r public/* /var/www/html/

    Rebuild and re-copy the public/ folder (or automate it with a CI pipeline) every time content changes -- unlike a CMS, a static site never updates itself.