Overview
Peakhour.IO specifies rules to override default behaviour. These rules use the wirefilter format and process at different stages of the request lifetime.
Phases of Rule Processing#
Peakhour.IO processes rules in these phases:
- Request Rewrite
- URL Configuration
- Firewall
- Rate Limit Request
- Rate Limit Request Late
- Request Headers
- Load Balance
- Response Headers
- Rate Limit Response
For a visual representation of these phases, see the Phase Flow.
Wirefilter-Based Rule Language#
The filter rule language in Peakhour.IO uses wirefilter. It provides boolean operators, functions, fields, and lists to specify rules. For details on the language syntax and available operators, see the Wirefilter Language documentation.
Using Rule Lists in Rules#
The in operator determines if a field value exists within a specific rule list. This applies in various phases to allow or deny access, rate limit, or perform other actions based on the field value. Rule lists exist in the virtual host configuration and apply to all rules within that virtual host. For more information on creating and using rule lists, see the Rule Lists documentation.