# 502 错误网关

**URL:** https://meta.discourse.org/t/502-bad-gateway-error/194016
**Category:** Self-hosting
**Tags:** server-resources
**Created:** [2021年六月16日 06:45 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016 "2021-06-16T06:45:23Z")
**Posts on this page:** 16
**Page:** 1

<div class="post-metadata">

### Author: ![ignatus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ignatus/32/223585_2.png) [@ignatus](https://meta.discourse.org/u/ignatus)
#### Post date: [2021年六月16日 06:45 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/1 "2021-06-16T06:45:23Z")

</div>

您好，我已经成功搭建了 Discourse（已运行），但经常遇到“502 Bad Gateway”错误，且网站速度非常慢。请问如何最好地解决这个问题？:s

 ![Gatewayerror](https://global.discourse-cdn.com/meta/original/3X/f/0/f09b4a4dfa16bc46d9eb5a64991ebce2cbc28bdf.png)

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2021年六月16日 14:54 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/2 "2021-06-16T14:54:42Z")

</div>

您使用的是机械硬盘还是内存非常小？

---

<div class="post-metadata">

### Author: ![ignatus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ignatus/32/223585_2.png) [@ignatus](https://meta.discourse.org/u/ignatus)
#### Post date: [2021年六月17日 03:16 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/3 "2021-06-17T03:16:53Z")

</div>

我的 Discourse 部署在 VPS 上

以下是 VPS 数据

| CPU 核心数 | 1 |
| --- | --- |
| 总 CPU 速度 | 2.4GHz |
| 内存 | 1GB |
| 磁盘空间 | 20GB |

---

<div class="post-metadata">

### Author: ![ignatus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ignatus/32/223585_2.png) [@ignatus](https://meta.discourse.org/u/ignatus)
#### Post date: [2021年六月18日 02:02 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/4 "2021-06-18T02:02:20Z")

</div>

我有时仍然会遇到 502 错误网关的问题。☹ 有什么办法可以解决吗？

 ![Gatewayerror2](https://global.discourse-cdn.com/meta/original/3X/b/c/bc9834fc5efbbba6665593be912ab76fd68b5bd8.png)

---

<div class="post-metadata">

### Author: ![riking](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/riking/32/170938_2.png) [@riking](https://meta.discourse.org/u/riking)
#### Post date: [2021年六月18日 16:44 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/5 "2021-06-18T16:44:58Z")

</div>

通用 Unix 服务器性能指南可协助诊断，但当前负载下您的内存可能不足。

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2021年六月18日 20:58 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/6 "2021-06-18T20:58:27Z")

</div>

你让 `discourse-setup` 创建交换空间了吗？

你安装了插件吗？

---

<div class="post-metadata">

### Author: ![ignatus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ignatus/32/223585_2.png) [@ignatus](https://meta.discourse.org/u/ignatus)
#### Post date: [2021年六月19日 01:39 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/7 "2021-06-19T01:39:47Z")

</div>

不，问题就出在这里：我的 VPS 提供商不允许我执行命令 “swapon /swapfile”，但不知何故我还是在没有它的情况下安装了 Docker。随后，我使用 “nano containers/app.yml” 编辑了包含所有数据的文件，然后运行了 “./launcher start app”……是的，我还安装了一些插件。

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [2021年六月19日 05:59 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/8 "2021-06-19T05:59:37Z")

</div>

所以 `discourse-setup` 警告你内存不足，而你很聪明地绕过了该警告。文档指出，如果你的内存少于 2GB，就需要配置交换空间（swap）。即使有 2GB 内存，如果没有交换空间，在执行升级重建时很可能也会遇到问题。

---

<div class="post-metadata">

### Author: ![ignatus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ignatus/32/223585_2.png) [@ignatus](https://meta.discourse.org/u/ignatus)
#### Post date: [2021年六月19日 07:13 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/9 "2021-06-19T07:13:11Z")

</div>

不知道，我的 VPS 只有 1 GB 内存（正如我在之前的帖子中提到的）。所以我需要修复 swap 和 Docker 对吗？

有什么有用的命令可以使用吗？（非常感激任何帮助）谢谢

---

<div class="post-metadata">

### Author: ![Benjamin\_D](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/benjamin_d/32/277831_2.png) [@Benjamin\_D](https://meta.discourse.org/u/Benjamin_D)
#### Post date: [2021年六月19日 09:36 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/10 "2021-06-19T09:36:24Z")

</div>

> [@ignatus](#):
>
> 我的 VPS 提供商不允许我执行该命令。

这让我想起了这个主题：

> [@Failed to create swap: are you root?](https://meta.discourse.org/t/failed-to-create-swap-are-you-root/139242):
>
> I bought a Ubuntu 18.04, 64bit VPS from Hostinger and I’m trying to install discourse but keep getting this error:

因此，你的 VPS 可能不支持完全虚拟化，更换托管提供商或许更容易，从而避免未来可能遇到的问题。

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [2021年六月19日 09:37 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/11 "2021-06-19T09:37:29Z")

</div>

> [@ignatus](#):
>
> 我的 VPS 提供商不允许我执行命令  
> “swapon /swapfile”

联系他们并解决这个问题。  
不过，许多 VPS 提供商根本不想让你这样做，因为这会过快损耗他们的 SSD 硬盘。

---

<div class="post-metadata">

### Author: ![ignatus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ignatus/32/223585_2.png) [@ignatus](https://meta.discourse.org/u/ignatus)
#### Post date: [2021年六月19日 11:32 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/12 "2021-06-19T11:32:49Z")

</div>

好的，第二个方案呢？我无法更换 VPS 提供商，也无法执行 “swapon /swapfile”，还有其他方法可以解决这个问题吗？😕

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [2021年六月19日 13:10 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/13 "2021-06-19T13:10:01Z")

</div>

🙄 不，没有其他方法可以解决这个问题。你需要使用 swap。

---

<div class="post-metadata">

### Author: ![ssvenn](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ssvenn/32/86740_2.png) [@ssvenn](https://meta.discourse.org/u/ssvenn)
#### Post date: [2021年六月19日 13:28 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/14 "2021-06-19T13:28:29Z")

</div>

与 VPS 提供商沟通以升级您的 RAM 容量。拥有足够的 RAM 时，您无需使用交换空间。

您可以考虑使用像 monit 这样的服务监控工具，在进程崩溃时自动重启您的容器。但随着活跃用户数量的增加，问题会愈发严重，并且长期来看存在损坏数据库的风险。

---

<div class="post-metadata">

### Author: ![ignatus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ignatus/32/223585_2.png) [@ignatus](https://meta.discourse.org/u/ignatus)
#### Post date: [2021年六月19日 14:34 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/15 "2021-06-19T14:34:55Z")

</div>

好的，谢谢你的回答，我现在明白了。

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [2021年六月19日 15:24 UTC](https://meta.discourse.org/t/502-bad-gateway-error/194016/16 "2021-06-19T15:24:06Z")

</div>

> [@ssvenn](#):
>
> 内存足够的话，你不需要交换空间（swap）。

如果你完全不想使用交换空间，那么你至少需要 4GB 内存，否则升级将会彻底失败——这可能意味着你将不得不花费目前预算的四倍。
