.rig domains & DNS

Every project gets a clean hostname like acme-storefront.rig that points at its running dev server - no port numbers to remember.

How routing works

  • An embedded DNS server runs on 127.0.0.1:5300 and resolves *.rigto localhost. Everything else is forwarded upstream. It never touches port 53, so it won't conflict with system DNS or other tools.
  • A reverse proxy reads the Host header, finds the matching project, and forwards the request to its port. Stopped or starting projects get a branded status page instead of a dead connection.
  • A small helper owns port 80 and forwards to the proxy - the only privileged piece, installed once.

Choosing a TLD

The default is rig. You can change it in setup or settings, but some suffixes are blocked because they break real networking:

StatusTLDs
Blockedlocal, localhost, dev, app, web, and real ICANN TLDs like com, io, ai
Warnedtest (used by other local tools), lan (can misbehave on some corporate networks)

Enabling routing

Routing needs a one-time privileged install - a resolver file at /etc/resolver/rig and the port-80 helper. Enable it from Doctor → Enable .rig domains with a single admin prompt. Until then, every project still works at its localhost:PORT URL.

Per-project HTTPS

Flip the lock on a project (or rig ssl <name> on) to serve it over HTTPS with a trusted wildcard certificate. It's off by default.

terminal
$ rig ssl acme-storefront on

Next: CLI reference