
Speed is the heart of a great user experience, but sometimes performance tools and page builders don’t play nice. Recently, while optimizing a site powered by Oxygen Builder 6, I ran into a wall: the builder's dynamic elements and certain AJAX-based functions stopped working as soon as LiteSpeed Cache (LSCache) was activated.
Here is the "skillful" journey of how I diagnosed the issue and why ESI (Edge Side Includes) was the key to the solution.
After enabling the "Aggressive" optimization profile in LiteSpeed, Oxygen Builder 6 began throwing errors. Dynamic content wasn’t loading, and certain save functions in the builder were failing.
At first glance, it looked like a JavaScript minification issue. However, standard exclusions didn't fix it. It was time to dig deeper.
I followed a systematic "Isolation" workflow to stop guessing and start knowing:
?LSC_PAGESPEED_NOOPT=1 to the URL, I confirmed the issue wasn't just CSS/JS minification.ajax_nonceInstead of disabling ESI entirely—which would hurt performance—the "skillful" fix was to tell LiteSpeed which specific security tokens must remain dynamic.
ajax_nonce on its own line.By adding ajax_nonce to the ESI Nonces list, LiteSpeed now treats that specific security string as dynamic content. While the rest of the Oxygen-built page remains lightning-fast and statically cached, the security token is refreshed for every visitor, ensuring that AJAX functions never fail.
If you continue to see issues with specific Oxygen elements (like dynamic tabs or filtered galleries), check your browser console. If you see a 403 Forbidden error on an AJAX call, you likely have one more nonce handle to add to that list!
Additionally you can read into https://www.ibrahim-jaber.com/litespeed-cache-exclusions-for-oxygen-builder/ and apply them, but adding three extra
builder
oxygen
?oxygen=builder