HTTP/2 not working when enabled

Hello

I have seen a number of these questions but they all remained effectively unanswered and I have the same problem.

So, we have a Pro account with Cloudflare, Full SSL certificate from our origin server, and TLS 1.3 enabled as well as HTTP/2 enabled in Cloudflare. Yet, for some reason, content served from Cloudflare does not utilise the HTTP/2 protocol.

When checking this URL: https://www.outdoorphoto.co.za/cdn-cgi/trace

I get this response:

fl=45f23
h=www.outdoorphoto.co.za
ip=154.73.153.198
ts=1543843818.164
visit_scheme=https
uag=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0.1 Safari/605.1.15
colo=JNB
spdy=off
http=http/1.1
loc=ZA
tls=TLSv1.2
sni=plaintext

It is clear that the HTTP/1.1 protocol is being used. I get the same result when checking Chrome developer tools network tab.

However as shown in this image, the HTTP/2 is clearly enabled in Cloudflare dashboard:

Why would this be? Why, if HTTP/2 is enabled as well as HTTPS and TLS (required for it to be available). why would it not be used? Is there something else I am missing?

By the way… Also, note that TLS 1.3 is enabled yet the cdn-cgi/trace only reports v1.2. Why is that?

Please I hope someone can help.
Thank you.

Have you tried a different browser? Both, Firefox and Chrome, are using HTTP 2 in my case.

I have tried Chrome as well as Safari. They both show that HTTP/1.1 is being used. Just to be sure that it is not the browser, I have checked our competition’s website too and voila, HTTP/2 is being used. And they are also hosting locally, in South Africa with the same host that we do. Only, they are not making use of Cloudflare!

The really interesting thing is if I run our homepage through webpagetest.org using a test server in San Fransisco I see that HTTP/2 is being used. But not if I check it in my Chrome and Safari browser. Could it have something to do with the Cloudflare server in South Africa??

I doubt, however, that it is purely because we are in South Africa with inferior internet because as mentioned above, our competition also hosts here (without CF) and their site shows up as using http/2 in my browser.

It’s http2 here

Even though I would rather doubt it, it is something I cannot rule out. You might want to open a support ticket in this case.

1 Like

Have you just moved to CF? Maybe you still have the old dns cached

In that case Cloudflare headers wouldnt show up.

We have been on Cloudflare for the past month already.

Again, I’d open a support ticket.

I am also getting http1 for your website

This topic was automatically closed after 30 days. New replies are no longer allowed.