Freenom -> CloudFlare -> Fly.io Sites -> Glitch

I am getting
Bad Request
Contradictory scheme headers
when I use my custom domain.
SSL for Cloudflare: full(strict)
Using Force SSL middleware for fly.io sites
I am using flask for the app
project name:ironite
image

Now I’m getting error 526 from cloudflare
See https://ironite.ml/
It says something about an invalid SSL certificate

Hello!

I checked our registry for domains and I don’t see that ironite.ml is associated with a Glitch project. Did you set it up using the dialog in the Glitch editor?

The form would have looked like this:
A popup with the heading 'Custom Domains' and instructions to 'Add a domain that you've already purchased elsewhere alongside a text input

Since I didn’t get thanked enough at that time, just went to https://fly.io/sites(you need to be signed in to view this) and created a site and linked my glitch project (ironite.glitch.me) to it

This topic might help you.

I used this tutorial but added cloudflare between fly.io by configuring DNS in cloud flare with a CNAME, and used cloudflare name servers on freenom

Also http works but https doesn’t

1 Like

I’m order for HTTPs to work with Cloudflare you need to either:

  1. Enable Force HTTPS in fly.io

  2. or Change Cloudflare SSL permissions time Flexible (it’s on Full by default)

Trying option 2 I get

Bad Request

Contradictory scheme headers

This is what I mean:

(the example shown does use Full, however this is because that domain’s DNS points to my own server, not a fly.io one)

Yeah I’ve tried that but it’s still showing a protocol contradiciton error

I’ve tried every security combination with force https on/off, and I’m still getting contradictory scheme headers. I think it’s an issue with flask because it gets confused whether we are using https or not, because the browser shows https is enabled for the contradictory scheme headers page.

By the way, I have already set up a website using freenom -> fly.io -> glitch so I don’t think there are any issues here. I think there is a header cloudflare is sending which confuses flask. I’ve tried using the header middleware in fly, but I can’t seem to find the right header

hey! I had this same issue a bit ago – have you tried this?