25 lines
1.5 KiB
Markdown
25 lines
1.5 KiB
Markdown
# Local-response / 404 hosts
|
|
|
|
RustProxy 0.22.3 has a dedicated **404 hosts** page for domains that should be
|
|
owned by RustProxy but must not contact a backend.
|
|
|
|
Each entry has the same frontend model as vhosts/redirects:
|
|
|
|
- one or more hostnames,
|
|
- named listener selection,
|
|
- optional TLS certificate,
|
|
- independent HTTP/2 and HTTP/3 switches.
|
|
|
|
The response can be:
|
|
|
|
- the built-in `RustProxy is running` placeholder,
|
|
- an application-style built-in status page for 401, 403, 404, 429, 503 or 504,
|
|
- an empty/status-only response,
|
|
- bounded custom HTML.
|
|
|
|
The status is selected rather than typed manually. Application-style pages use the bundled 400/401/403/404/408/410/413/429/500/502/503/504 templates. Placeholder, empty and custom-HTML modes expose the supported application error set: 400/401/403/404/408/413/429/500/502/503/504. HTTP/2 and HTTP/3 toggles are shown beside the listener controls because they apply to the selected frontend listeners. Host/listener ownership is
|
|
validated against vhosts and redirect hosts, so two active configuration objects
|
|
cannot claim the same frontend binding.
|
|
|
|
All 404-host responses remain local and never open an upstream connection. They are not stored in RustProxy cache. Before the response leaves RustProxy, cache policy/validator headers and RustProxy `X-Cache*` diagnostics are removed, so 404 hosts do not advertise cache behavior on the wire. The built-in `RustProxy is running` placeholder also intentionally omits optional RustProxy server, diagnostic, security, compression and backend headers.
|