Troubleshooting Blank Previews: Ghost, NGINX Proxy, and Cloudflare Setup


I have been attempting to setup Ghost on my network to self-host behind an NGINX Proxy Manager instance and Cloudflare. Everything is working properly, except “view site” and the “site design” locations of the admin UI. In both cases, the previews are blank. Is anyone familiar with this issue and can offer assistance? Below are some details of my configuration, please let me know if additional information is needed.


  • “A” record pointing to WAN IP
  • SSL/TLS encryption mode is Full (strict)


  • Ghost-CLI version: 1.24.2
  • Ghost version: 5.59.0
  • /etc/nginx/sites-enabled/
    • “proxy_set_header X-Forwarded-Proto $scheme;” changed to “proxy_set_header X-Forwarded-Proto $https;”

NGINX Proxy Manager:

  • Host created and pointing to VM IP address.
  • Host scheme set to http and port set to 80
  • Proper SSL cert created, active and applied to host.


  • Port 80 and 443 forwarded to NGINX Proxy Manager IP

Are yup using one domain or two? The preview required the browser to make a request to the front page domain from a page in the admin domain. So this could be a CORS problem, in which case you’ll likely see the error in your browser’s console log.

Hello @Cathy_Sarisky,

I am using a single domain.

I just noticed that I cannot configure membership, even though the connection is showing https and secured. This is the error for that:
Your site is not secured

Paid memberships through Ghost can only be run on sites secured by SSL (HTTPS vs. HTTP).

Can you switch communication between proxy and ghost to https?

I tried that, but then I get a “502 Bad Gateway” error.

I was using the default port 80. Do I need to choose a custom port number on the ghost web server?

typically you’d put ghost on 2368 and nginx on 80 :)

I tried using port 2368, but it would not resolve. Creating an NGINX PM host pointing to port 80 works, for the most part. The preview stuff does not.

Do I need to have an SSL cert installed to the ghost server in addition to the NGINX PM?