UNDER THE HOOD

One process. A considered architecture.

A Go server that brings the request path and the operational tools together. Follow a request, then explore the source.

A request’s journey.

SIMPLIFIED REQUEST LIFECYCLE
01

Connect

TCP, TLS & QUIC

02

Protect

Global middleware

03

Route

Virtual host lookup

04

Process

Guards & rewrites

05

Cache

L1 memory + L2 disk

06

Serve

Static, PHP or proxy

The public request path

HTTP, HTTPS and optional HTTP/3 listeners route requests by host. Global middleware handles recovery, request identifiers, security headers, compression and other shared concerns.

Domain-level decisions

IP rules, access controls, WAF and bandwidth checks apply per domain. The rewrite engine and cache lookup run before dispatch to a static, PHP, reverse-proxy or redirect handler.

Memory meets disk

L1 memory and L2 disk store cacheable responses. ESI, tag purge and stale handling support more sophisticated content delivery without installing a separate caching service.

A private control plane

The dashboard, REST admin API and MCP server are management interfaces. The upstream defaults bind management listeners to loopback; public sites use separate listeners.

Managed workloads

PHP-FPM, native runtimes, databases and containers remain separate processes where required. UWAS coordinates their routing and administration; they are not embedded language runtimes.

Configuration that can change

A YAML entry point, optional domain includes and CLI validation keep intent visible. Reloads rebuild per-domain handling while the service continues to run.

Explore the upstream architecture
YOUR NEXT DEPLOYMENT STARTS HERE

Less stack.
More possibility.

Your domains, your applications, your infrastructure.
Bring them together with UWAS.

Open source · Self-hosted · Built in Go