Custom Pages
Open Console → WAF → [your domain] → Custom Pages. Select a page type, enable it and paste your HTML template. Changes deploy to all edge nodes within seconds.
Page types
Section titled “Page types”Each page type maps to a specific HEIMWALL response:
| Page type | When it is shown |
|---|---|
blocked | A firewall rule blocks a request |
captcha / hcaptcha / friendlycaptcha / mtcaptcha / altcha | Challenge interstitials |
javascript | Browser integrity check page |
maintenance | Origin is in scheduled downtime |
ratelimit | Visitor hits the rate limit threshold |
waitingroom | Queue page shown during a waiting room event |
noorigin | HEIMWALL cannot reach your origin server |
overload | Short-lived “please wait” page shown under extreme load — template must include {{refresh}} (or its own meta-refresh) so the browser retries automatically |
502 / 503 / 504 | Custom pages for these HTTP error codes from origin |
Writing the template
Section titled “Writing the template”Paste a full HTML document into the editor. HEIMWALL processes template variables before serving. The page is delivered from edge — external CSS and fonts loaded by URL work normally. Keep the page lightweight; visitors see it under adverse conditions (attack traffic, origin down).
Template variables
Section titled “Template variables”Insert these placeholders anywhere in your HTML; HEIMWALL replaces them at render time:
| Variable | Value |
|---|---|
{{.IP}} | Visitor IP address |
{{.RayID}} | Unique request ID, useful for support lookup |
{{.Host}} | The domain the request targeted |
{{.Rule}} | The rule name that triggered the page (block pages only) |
{{.RetryAfter}} | Seconds until the visitor may retry (ratelimit pages only) |
Reverting to the default
Section titled “Reverting to the default”Disable the toggle for any page type to revert to HEIMWALL’s built-in default. Your custom HTML is preserved and can be re-enabled at any time.