cuweb / C-utils

A small origin.
A visible request path.

cuweb is a single-threaded Linux HTTP/1.1 server built with Dependable C89. It loads static files at startup, then serves that snapshot from memory.

This is a field guide to the server and the delivery boundary around it. No benchmark promises. Just the mechanism, its limits, and responses you can inspect.

Try the request inspector
Planned route: Cloudflare DNS resolves the public host. A browser uses HTTPS to CloudFront. CloudFront uses HTTP to a restricted origin entry, which forwards to cuweb on IPv4 loopback.
Proposed delivery pathHTTPS at the edge. HTTP toward the origin. Not end-to-end TLS.

Know where
the boundary is.

The intended public address is cuweb.traversannan.com. Cloudflare provides DNS; CloudFront terminates public HTTPS. A restricted HTTP origin entry forwards requests to cuweb on loopback.

cuweb itself has no TLS and is not an internet-hardened replacement for nginx. Public access, origin restrictions and forwarding policy belong to the infrastructure around it.

Deployment is separate. This site records the intended topology, not evidence that the public endpoint is deployed or that its restrictions have been verified.

Download the architecture JSON

Read the response.

Make an explicit request from your browser. Nothing runs until you choose an action.

Open /health
Open /architecture.json

Health requests target /health. Static requests target /architecture.json, which can carry an ETag.

Inspector requires JavaScript. The direct links work without it.

No request made.

A conditional request reuses the last observed asset ETag. Responses describe the endpoint serving this page, potentially including an edge cache—not a direct measurement of cuweb. Health is not an uptime or security assessment.

Files become
a snapshot.

With --root DIR, cuweb preloads a trusted release directory. It does not read files from disk while handling requests. Editing a source file does not change the running representation: publish a new release directory and restart the origin.

GET
Returns the selected representation.
HEAD
Advertises the corresponding GET length, without a response body.
ETag
Static assets use strong quoted SHA-256 tags. A matching strong condition can return 304 without a body.
Read the implementation notes