I am currently evaluating Fortinet FortiSASE for a potential organization-wide deployment, with a primary focus on its ability to enforce our internal web access policies. A critical requirement for us is the presentation of a custom block page that not only informs the user of the denied access but also provides specific references to the internal compliance policy (e.g., "This request violates Corporate Acceptable Use Policy, Section 4.2") and offers clear instructions for requesting an exception.
Despite extensive configuration efforts, I have been unable to get these custom pages to load reliably. The default Fortinet block page appears instead. I have followed the documented procedure to create and upload a custom block page ZIP archive via the FortiSASE portal, and the associated Web Filter profile is configured to use the "Custom Block Message" option.
To systematically diagnose the issue, I have broken down my configuration and observations:
* **Current Configuration State:**
* A custom ZIP file has been uploaded, containing a single `block.html` file. The file has been validated for proper HTML structure and internal CSS.
* The Web Filter profile in the security policy has "Custom Block Message" selected, with the correct uploaded package name specified.
* The policy is applied to a test user group with a simple allow/deny rule set, triggering the block page correctly for prohibited categories.
* No other overriding settings (like custom allow/deny messages in the firewall policy itself) are configured.
* **Observed Behavior:**
* When accessing a blocked site, the connection times out for approximately 30 seconds before any page loads.
* After the delay, the default Fortinet block page is displayed, not our custom content.
* This occurs across multiple endpoint types (Windows, macOS) and browsers.
* The FortiSASE portal shows no errors related to the custom page package, and its status is listed as "Uploaded."
* **Specific Questions for the Community:**
1. Are there known limitations or specific HTML/CSS constructs that the FortiSASE custom block page engine does not support? The documentation is notably sparse on technical specifications.
2. Is there a particular sequence or dependency, such as requiring the custom page to be assigned at a global level before it can be referenced in a Web Filter profile, that I may have missed?
3. Has anyone successfully implemented a custom block page that includes dynamic elements like policy section numbers? If so, what was the critical step in your workflow?
4. Are there any diagnostic commands or log views within FortiSASE that can confirm the system is attempting to fetch and serve the custom HTML, perhaps revealing a parsing or hosting error?
My next step will be to create an even more minimal HTML file (plain text only) to rule out any rendering issues, but I am concerned this may be a platform-level constraint. Any detailed insights or comparative experiences with similar SASE platforms regarding this functionality would be greatly appreciated.