The CloudFlare template isn’t a new addition, and if you take the time to look at the source you will see that the sole purpose is grab their IP ranges and modify nginx to ensure it’s looking at the CF-Connecting-IP as the true client address is obscured by the proxying the orange cloud provides. It’s not a new thing, it’s been around for at least seven years. You can use Cloudflare to conceal the whereabouts of your server, or act as a cheap CDN for uploads, but in both cases we would recommend you disable all performance features and use a page rule to enable caching on your uploads folder.
Right, my point was that if Cloudflare was unsupported, they wouldn’t bother officially adding in any kind of support for it the first place. They also wouldn’t have official tutorials on how to use it. Granted, they may recommend not using it because of X, Y, and Z in some cases, but that’s not the same as something being flat-out unsupported.
What benefit would testing via GTMetrix demonstrate? I think you have a fundamental misunderstanding of how Discourse works to be citing that. Discourse isn’t a website, it’s a Javascript application. Navigating the site doesn’t serve flat HTML pages to the browser. The Javascript app which loads into your browser talks to the server directly, which is why certain page elements don’t appear to reload between clicks. The snappiness of said application is only determined by server resources and latency between client and server. CloudFlare can’t speed up your Discourse instance, and its presence between the two systems increases latency.
Yes, I understand that Discourse isn’t a website. It’s a platform for delivering content like any other platform/software/CMS. Of course Cloudflare can’t impact anything at the server-level, which is especially true of LAMP setups. But, ultimately, every platform has to eventually deliver all the client-side code (HTML/CSS/JS). Of course GTmetrix can’t scan for server-side speed, but you can still glean some things about the final output of your setup. In other words, how the user experiences the loading of content.
Cloudflare doesn’t actually speed up a website all that much, not nearly as dramatically as server-side optimizations and better server resources do. We’re in full agreement on that. Its main focus is optimizing DNS. There’s some more advanced CDN features for paid accounts, especially where images are concerned, but I’ve never even used a paid account. I wonder if it’s some of those advanced features where people run into the most trouble and have to ask for help?
The above is based on years of experience, not a feeling. Discourse still has periodic problems with Cloudflare. Beyond obscuring your server IP and saving a little data transfer for uploads there’s nothing that Cloudflare can do to speed up a Discourse site.
Dang it. I knew I was going to get grief for saying “feeling,” but it’s just a figure of speech. I’m talking from experience too.
I wouldn’t challenge the fact that as a Leader in the official Discourse community, you obviously have more experience with Discourse, and clearly have seen all kinds of wacky issues caused by Cloudflare.
Aside from getting into the weeds about all the nuances of Cloudflare/Discourse, I still stand by my primary point though, which is merely that Cloudflare isn’t at all as scary as the narrative in this forum would have most people believe.
That said, I also understand managing communities and obviously not everyone is a developer or even tech-savvy. In that sense, I can see why being flooded with people thinking that Discourse is broken when it’s just Cloudflare or something similar would become annoying.