Files
kage/docs/content/guides/serving-a-mirror.md
T
wehub-resource-sync 9c9576b5b9
ci / test (macos-latest) (push) Has been cancelled
ci / test (ubuntu-latest) (push) Has been cancelled
ci / lint (push) Has been cancelled
ci / govulncheck (push) Has been cancelled
ci / tidy (push) Has been cancelled
ci / webview (push) Has been cancelled
ci / windows-gui (push) Has been cancelled
release / check (push) Has been cancelled
release / release (push) Has been cancelled
Docs / build (push) Has been cancelled
Docs / deploy-pages (push) Has been cancelled
Docs / deploy-cloudflare (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-14 10:24:05 +08:00

1.3 KiB

title, description, weight
title description weight
Serving a mirror View a cloned folder the way it would render on a real host, with kage serve. 20

A clone is a plain folder of files, so the simplest way to view it is to open an .html file in your browser. That works for many sites. But some pages use root-relative URLs (/style.css, /img/logo.png), which only resolve correctly when served from the root of a host. kage serve gives you that root.

Serve a clone

kage serve $HOME/data/kage/example.com
kage serve $HOME/data/kage/example.com
  open http://127.0.0.1:8800
  press Ctrl-C to stop

Open the printed URL and click around the mirror exactly as you would the live site. Every in-scope link kage rewrote points at another saved page; every asset resolves to its localised copy.

Choose an address

By default kage serves on 127.0.0.1:8800. Change it with --addr:

# A different port
kage serve $HOME/data/kage/example.com --addr 127.0.0.1:9000

# Reachable from other machines on your network (be deliberate about this)
kage serve $HOME/data/kage/example.com --addr 0.0.0.0:8800

Serve the current directory

With no argument, kage serve serves the current directory, which is handy from inside an output folder:

cd $HOME/data/kage/example.com
kage serve