I’m putting Ghost behind NGINX proxy manager. It works fine for viewing, but when I try to get to the admin panel ( https://www.DOMAIN.org/ghost ), it times out:
from access.log:
[17/Jun/2025:16:12:24 -0500] “POST /ghost/api/admin/session HTTP/1.1” 504 176 “https://www.DOMAIN.org/ghost/” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:139.0) Gecko/20100101 Firefox/139.0”
I haven’t changed anything in the regular NGINX configuration that serves the pages, and my NGINX proxy manager setup contains this setup in the Advanced tab:
Have you checked your Ghost logs? My guess is that your transactional mail config is not set up correctly and so Ghost is timing out when attempting to send the 2FA code email when you log into the admin area from a new device.
There are some docs on mail config here, and if you search on the forum you’ll find many examples of people dealing with specific problems they ran into - e.g. DigitalOcean blocking SMTP ports.
In my case, when I try to log in the admin panel (when I didn’t configure mailgun), I’ve got a direct message Failed To Log In, please try again later. And When I click on the forgot button message was Failed to Send email link .
But here is time out. I think here is an another problem…
I “think” that all cookies should be passed through nginx proxy manager by default.
“message”: “Authorization failed”,
“context”: “"Unable to determine the authenticated user or integration. Check that cookies are being passed through if using session authentication."”,
“stack”: "NoPermissionError: Authorization failed\n at authorizeAdminApi
Again same problem. Would be great if during installation ghost on self-host have option something like “configure transaction e-mail now or later”. Or just small remind option.