Ghost 1.8.7更新后“502 Bad Gateway”的原因是什么?

时间:2017-09-20 00:49:53

标签: nginx ghost-blog ghost

我最近在我的 AWS ec2 Ubuntu 16.04 服务器上安装了Ghost 1.8.4和Nginx。当我加载我的博客站点时,它正确地将我带到了Ghost主页,从那里我登录了Ghost admin。在管理员屏幕上,有一条要更新的消息。

我在putty中运行了ghost update

更新似乎成功,但当我回到我的博客网站时,我收到以下错误:

  

502 Bad Gateway   nginx / 1.10.3(Ubuntu)

  1. 有没有人知道这个错误的可能原因以及如何解决?
  2. 我检查了一些帖子,这表明我应该在更新之前关闭Ghost。如果这是真的,我的鬼装置现在已经损坏了吗?
  3. 我在/var/www/ghost访问了我的ghost目录并尝试运行:

    sudo service ghost start

    但它又回来了:

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

    并尝试停止,返回Unit ghost.service not loaded。我是否从正确的位置运行命令?

3 个答案:

答案 0 :(得分:2)

在运行它几年后,我经历过几次关于nginx背后的鬼问题。我不确定今天我的原因是否与你的原因相同,但我观察到的是,重启之后ghost已将其端口号更改为与nginx配置正在侦听的端口号不同。

我按照https://www.danwalker.com/running-ghost-on-a-5-digital-ocean-vps/中的这些说明为我解决了这个问题:

查看正在运行的端口ghost:

sudo netstat -plotn

检查它是否与proxy_pass中nginx配置文件中的/etc/nginx/sites-enabled匹配。

在我的情况下,nginx配置中的端口增加到2369而实际节点进程在2368上运行。在我的ghost博客的nginx配置文件中将proxy_pass端口更改回2368解决了我的问题。

答案 1 :(得分:0)

显然,当我发布此问题时,由于Ghost CLI中的一个错误导致幽灵团队正在修复。

他们向我提供了在我的服务器上运行的这些说明:

systemctl stop ghost_www-blogwebsite-com
ghost update --force

结果输出:

stopping Ghost [skipped]
Removing old Ghost versions [skipped]

这解决了问题,并更新为正确的版本。

答案 2 :(得分:0)

升级幽灵后,我遇到了同样的问题。

确保幽灵的配置文件中配置的端口号与幽灵站点的nginx配置文件中的 proxy_pass 相匹配。

检查端口号 /var/www/ghost/config.production.json与nginx配置文件中的 proxy_pass 端口匹配。

/var/www/ghost/system/files/<yourDomainName>.<extension>.conf
/var/www/ghost/system/files/<yourDomainName>.<extension>-ssl.conf

就我而言,我必须将nginx配置文件中的2368更改为2369以解决此问题。

请确保在进行更改后重新启动幽灵和nginx

# restart your ghost site
cd /var/www/ghost/
ghost restart 
# restart nginx
sudo systemctl restart nginx

希望这对某人有帮助。