nginxghost-blogghost

What is the cause of the "502 Bad Gateway" after Ghost 1.8.7 update


I recently installed Ghost 1.8.4 and Nginx on my AWS ec2 Ubuntu 16.04 server. When I loaded my blog site, it correctly took me to the Ghost home page, from where I logged into Ghost admin. On the admin screen, there was a message to update.

I ran ghost update in putty

The update appeared to be successful, but when I returned to my blog site, I received the following error:

502 Bad Gateway nginx/1.10.3 (Ubuntu)

  1. Does anyone know a probably cause of this error and how to resolve?
  2. I checked some posts, which suggested I should have turned Ghost off before the update. If this is true, is my ghost installation now corrupted?
  3. I went to my ghost directory in /var/www/ghost and tried to run:

    sudo service ghost start

    but it returned:

    Failed to start ghost.service: Unit ghost.service not found

    and trying to stop, returns Unit ghost.service not loaded. Am I running the command from the correct location?


Solution

  • I've experienced 502 issues with ghost behind nginx several times over a few years of running it. I'm not sure if the cause of mine today is the same as yours, but what I observed was that after a restart ghost had changed its port number to one different than what its nginx config was listening on.

    I followed these directions from https://web.archive.org/web/20200807095031/https://www.danwalker.com/running-ghost-on-a-5-digital-ocean-vps/ which resolved it for me:

    See which port ghost is running on:

    sudo netstat -plotn
    

    Check that it matches the proxy_pass in the nginx config file in /etc/nginx/sites-enabled.

    In my case the port in the nginx config had incremented to 2369 while the actual node process was running on 2368. Changing the proxy_pass port back to 2368 in my ghost blog's nginx config file resolved the issue for me.