Overlay install
Lay lazysite over an existing static site, keeping every page live.
Overlay install
Lazysite installs non-destructively over a live HTML or SSI site. The existing pages keep serving throughout, and migration to Markdown happens page by page, at whatever pace suits.
What the installer touches
The installer is manifest-driven: every shipped file is classified as code or seed content.
- Code (the cgi-bin scripts and the engine's own files under
lazysite/) is always installed and refreshed - it must match the shipped version. - Seeds (a starter
index.mdand404.md,lazysite.conf, the auth and nav seeds) are written only when absent.
Any non-code file that already exists on disk is preserved, never overwritten - including files the installer has never tracked, such as the homepage of the site being overlaid. Upgrades follow the same rule: per-file checksums recorded at install time mean an edited seed is never clobbered.
What it never touches
Existing .html and .shtml content is left exactly where it is. The
one deliberate delete is a shadowing index.html, and only when
index.md already existed before the install - in that case the
index.html is lazysite's own regenerable render cache. If index.md
is absent or was only just seeded, an existing index.html is real
content and is left alone, so the original homepage keeps serving.
As a safety net, the Hestia install path takes a one-time
preinstall-*.tar.gz snapshot of the original docroot (excluding
lazysite's own directories) into lazysite/backups/ before first
install; it is listed and downloadable from the manager Backups page.
How existing pages keep serving
The front-end serves real files first. FallbackResource (Apache) or
try_files (nginx) routes only misses to lazysite, so a request for
an existing .html or .shtml file never reaches the processor. For
clean URLs, the shipped Apache vhost maps /page to a sibling
page.shtml (preferred, so Apache expands SSI includes) or
page.html when no page.md exists; the processor carries the same
fallback for .html siblings on other front-ends and the dev server,
serving the legacy file verbatim.
Migrating page by page
A Markdown source always wins: the moment page.md lands, that URL is
rendered by lazysite, and the old static file is simply no longer
consulted for the clean URL. Pages without a Markdown source continue
to serve their original HTML indefinitely - there is no cut-over
moment, and the site is complete at every step.