Browse documentation
Core concepts

Configuration

A readable YAML entry point for domains and global server settings.

UWAS v0.11.31Release notes reviewed October 22, 2026Upstream reference

One entry point

Global settings control listeners, ACME, logging and shared caches. Domain entries describe how individual hosts are served. The complete upstream example is the authoritative field reference.

Configuration exampleyaml
global:
  acme:
    email: hello@example.com

domains:
  - host: example.com
    type: static
    root: /var/www/example.com
    ssl:
      mode: auto

Split domains into files

Use domains_dir to load domain YAML files from a directory. Each per-domain file contains a domain object directly, without a domains wrapper.

Terminalshell
# uwas.yaml
domains_dir: domains.d

# domains.d/example.com.yaml
host: example.com
type: static
root: /var/www/example.com
ssl:
  mode: auto

Environment values and validation

The upstream example uses environment substitutions for sensitive values. Supply those variables in the server environment, avoid committing secrets, and validate before reloading.

Configuration exampleyaml
global:
  admin:
    enabled: true
    listen: "127.0.0.1:9443"
    api_key: "${UWAS_ADMIN_KEY}"

Apply changes

The CLI can validate and reload configuration. A SIGHUP rebuilds per-domain request handling chains. Back up the working configuration before substantial changes.

Terminalshell
uwas config validate
uwas reload
Need every option? Read the complete configuration reference and the upstream upgrade notes for your release.