Custom domain on Firebase not loading after DNS migration to Cloudfare

Dear all, I bought a domain/website from google domains and I use this domain while Firebase handles the backend server hosting.

The problem is after migrating my DNS records from Google to Cloudflare, my website is not loading anymore.
The error that came up on the firebase console was “We couldn’t find the A records we expected for your domain.”

I used Cloudflare’s automatic migration process so I didnt enter anything manually.

Picture 1 is from my firebase console.

Picture 2 is from the Cloudflare DNS console.

I am kind of stumped here, because the A name values (blurred out) match exactly between firebase console and Cloudflare’s DNS page.

Has anyone faced this problem with firebase before? What else could I be missing?

Likely because the A record you have is proxied.

Thanks @anon9246926 for your answer. I am confused as isn’t that the point of Cloudflare? that it acts infront of my domain to protect my site by proxy?

You are correct, @jd.knightyjames in your understanding that anyone wishing to benefit from features that rely on the Cloudflare proxy need their records set to :orange: You are trying to verify your custom name with a service provider, and the provider is not seeing the record they are looking for and are unable to verify your setting. While an A record is an uncommon method of verification, it is certainly possible. Set the A record to :grey: DNS Only and test it with your service provider again. Once it has verified, you may be able to switch it to :orange: proxied again, as long as they don’t keep looking for the record to match your assigned IP.

1 Like

Hi @epic.network I tried the steps you did and you were correct. When i set it to DNS only I waited 15mins and my website loaded fine, no problem.

I set it back to proxied and waited another 15mins then re-tested my website. Its not working now.

So it seems setting it to proxied is interfering with the site somehow.
Any ideas for ways I could resolve this?

I know you mentioned the possibility that they (Firebase) might be continously looking for the record to match, which may be causing the issue.

thanks,
James

According to the Firebase documentation, they use their own CDN. I don’t know if that poses any compatibility issue with using the Cloudflare proxy. You may want to see if their community has any additional insight.

https://firebase.google.com/docs/hosting/custom-domain

Just want to update that I think I’ve resolved the issue after doing extensive testing with different variations of proxied/DNS and SSL/TSL being either flexible or full.

The issue stems down to SSL/TSL after setting my website to full based on the suggestion in this thread: Firebase hosting with Cloudflare proxy vs. DNS only - #5 by fritex

1.When I have the DNS set to DNS only then it doesn’t matter what SSL/TSL setting I use because the site will load without issues.

2.When I switch to proxied but have my SSL/TSL set to flexible then the site stops working and gives an error → bug/1173575, non-JS module files deprecated.
3. When I repeat step 2 above but with SSL/TSL set on full then I dont see the issues with the site loading anymore.

So to summarise and incase someone else has firebase issues like me. You must set your DNS to proxied and your SSL/TSL must also be set to full.

1 Like

Flexible deceives visitors by accepting HTTPS requests to the Cloudflare procy and sending unencrypted HTTP requests to your origin. It is dishonest and dangerous. It also is a common cause of performance issues. It should never be used.

Full uses HTTPS but does not check for a valid certificate. This can expose you to unnecessary risk.

2 Likes

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.