Production serving old deploy (fresh is only on alternative domain)

Hello,
we have issues with latest deployments to production. It didn’t update website at production domain at all. On the other hand, alternative domain for same deployment works well at client-staging-alpha.idex.io.

Netlify App: idex-app
Production domain: exchange.idex.io (returning old content)
Alternative domain: client-staging-alpha.idex.io (works)

ps. We are using Cloudflare CDN before Netlify but domains were fully purged. And old content is cached directly in Netlify.

@idex Netlify recommends NOT using Cloudflare in front of Netlify, unless you are using Cloudflare for DNS only (gray cloud), instead of with Cloudflare protection (orange cloud).

Yes, I read that earlier and we might consider switching to Netlify CDN in future.
For us, SSL certs are handled by Cloudflare right now and that works without issues, the only issue is that Netlify seems to serve old build content for some domains, and newer build content for the other - for the same app.

My approach has always been to fix what I know to be wrong before trying to troubleshoot issues with causes unknown.

Hi, @idex. Actually, the following is not true:

Somehow, you are not proxying to Netlify when using the production domain. The proof of this can be found in the absence of the HTTP response header named x-nf-request-id.

We always return this header with a string which uniquely identifies that exact HTTP response. There is more about the x-nf-request-id header in this support guide.

Here is the proof. For client-staging-alpha.idex.io, the header is returned:

$ curl -svo /dev/null https://client-staging-alpha.idex.io/  2>&1 | grep 'x-nf-request-id'
< x-nf-request-id: 3a7971ba-d33f-489f-bbb8-cb3a7353b87b
$

For exchange.idex.io , there is no header which proves that Netlify is not the origin for that URL:

$ curl -svo /dev/null https://exchange.idex.io/  2>&1 | grep 'x-nf-request-id' 
$

To resolve your caching issue, you will need to find the actual origin for that domain. You can then update that origin.

You might also resolve this by making Netlify the origin for that domain. You state the content is correct for the alternative domain and I did confirm that domain is proxied to Netlify (but your production domain is definitely not proxied to Netlify at this time). If you configure your production domain to work the same way as the alternative domain, that should be all that is required to resolve this. However, I don’t know what your settings are at Cloudflare so I cannot tell you what to change there.

Thanks for the help.

It looks like that it might be actually serving content of CloudflarePages which seems to override normal DNS settings. That configuration is not directly visible in Cloudflare’s DNS settings which is super weird :o

So this seems to not really be issue with Netlify. Nice to know that I should look for x-nf-request-id request ids.

1 Like

Thanks for letting us know, @idex !

1 Like