• Maybe this is a bug report for Cloudflare integration?
    I signed up for Cloudflare Pro and want to use Polish (which converts images to Webp). I made the Breeze CDN settings BUT i just had weird and mostly poor results getting Polish to process the webp. I know how to look for the CF headers and sometimes cf-polish would be there, most times not. it seemed like Cloudflare wasnt getting proper access to the image? not really sure how to explain but felt like something was disjointed and had me thinking Breeze was doing something to cache the image in a way it impacted Cloudflare polish

    So i googled and found Super Page Cache which is optimized for Cloudflare. Set up my API key and BOOM… all the webp generation worked! With cloudflare caching on! My initial CWV tests are faster!

    1. So mostly this is to say… something isnt right with Breeze and the CF Pro Polish feature, and I think you guys should do some testing?
    2. Breeze for me is completely off, and I wonder if there is some feature I am missing that is beneficial… varnish, redis. Maybe back to the point above it would be cool if I could get the Breeze features with the images moving through Cloudflare properly.

    Note: I did try the Cloudways integrated Cloudflare and my first month bill was higher than expected. Likely from images at the edge? I dont know.. this is costing me $20 a month right now

    • This topic was modified 6 days, 20 hours ago by skyzlmt.
Viewing 3 replies - 1 through 3 (of 3 total)
  • While investigating a different Breeze-related issue, I happened to review parts of the plugin code and noticed that Breeze’s Lazy Load feature rewrites image tags quite aggressively. It replaces the original image src with a placeholder and moves the real image URL to a custom attribute. It also modifies srcset attributes. I am not certain that this is the cause of your issue, but it made me wonder whether Cloudflare Polish might sometimes be seeing the placeholder image rather than the original image during processing.

    As a quick test, it might be worth disabling only the Breeze Lazy Load feature while keeping the rest of Breeze enabled, then checking whether Cloudflare Polish starts behaving consistently. If that changes the behavior, it could help narrow down the source of the problem and provide useful information for the Breeze developers.

    Plugin Author owaisalam

    (@owaisalam)

    Thanks for the detailed report, and good data point that Super Page Cache works for you — that tells us a Breeze feature is likely involved, but we still need to pin down which one. Could you run a few quick checks so we can confirm whether this is a Breeze bug or a configuration issue?

    1. Share your Breeze settings

    • Screenshot of Breeze → CDN tab (especially the CDN URL value).
    • Screenshot of Breeze → Basic Options (Lazy Load + Use Native Lazy Load toggles).

    2. Check if images are reaching Cloudflare

    Pick any image URL from your page and run:

    curl -I https://your-image-url.jpg

    • If the response has no <code class=””>cf-ray / <code class=””>Server: cloudflare → the image is bypassing Cloudflare (likely because Breeze’s CDN URL points to a host that isn’t proxied by Cloudflare). That alone would explain why Polish never processes it.
    • If <code class=””>cf-ray is present but <code class=””>cf-polish is missing → the image is reaching Cloudflare, so the cause is elsewhere.

    3. Quickly test the Lazy Load theory

    In Breeze → Basic Options, turn Lazy load images = OFF, save, purge both Breeze and Cloudflare cache, then reload the page and check the <code class=””>cf-polish header in DevTools → Network.

    • If Polish now works consistently → Breeze’s JS lazy loader was the cause. You can either keep it off, or enable Use Native Lazy Load instead (it only adds <code class=””>loading=”lazy” and doesn’t rewrite <code class=””>src / <code class=””>srcset).
    • If it still misbehaves → Lazy Load wasn’t the cause.

    Please share the <code class=””>curl -I output and the result of step 3 — that will let us tell you definitively which Breeze feature (if any) is responsible and how to fix it without dropping Breeze.

    Thread Starter skyzlmt

    (@skyzlmt)

    Hey Guys thanks for the responses. So i figured this out and it works but honestly, not sure of all the steps.

    I am Cloudways hybrid, running Breeze, the Cloudflare plugin and polish is working.

    one thing i’ll say is maybe i had too many moving parts going at once and had several challenges

    I also switched to Lightning stack at same time. Polish wasnt working. I was gettign s-maxage of a year (which is horrible for a website) and couldnt figure out why

    I went back to hybrid (as I needed to change htaccess to handle CacheControl), put back breeze and the Cloudflare plgin.. refreshed all of the cache’s… and everntually i was getting webp images from CF, my maxage and s-maxage settings were correct. All was good in the world.

    Not sure if it was the lightning stack? well i know lightning would not allow me to set cachecontrol easily… but in the end i got to a place where it all works.

Viewing 3 replies - 1 through 3 (of 3 total)

You must be logged in to reply to this topic.