跳至主要內容

反向代理


设置反向代理和 SSL

为了向外公开站点,你应当使用 https 协议。我们推荐使用 Caddyopen in new window 作为反向代理,它可以自动申请证书并配置 https。

下面是一个使用 Cloudflare 的 API 自动进行证书验证的 Caddyfile 例子:

{
        email <YOUR_EMAIL>
        storage file_system {
                root /root/caddy/certs/
        }
        log error {
                output file /root/caddy/logs/error.log {
                        roll_size 20MB
                        roll_keep 5
                        roll_keep_for 240h
                }
                level ERROR
        }
        acme_dns cloudflare API_TOKEN
}

your-cws-site.com {
        reverse_proxy :5000
}

使用 Cloudflare

推荐使用 Cloudflare 加速站点,从而隐藏服务器 IP。如果你将域名 DNS 托管在 Cloudflare,在开启 Proxy 之后,你有如下方式使用 https:

  • 在 Cloudflare 中设置站点 https 跳转,并在 SSL/TLS 选项中设置加密类型为 flexible;服务器中反向代理对外使用 http 协议。如果你想更安全,可以将其配置为只允许 Cloudflare 服务器访问。这样的好处是开启 https 较为简单,不用续证书。
  • 在 SSL/TLS 选项中设置加密类型为 Full,服务器反向代理配置有效的 SSL 证书,对外使用 https。

防火墙

你应当保证 Mongodb 和 ninja 的端口不对外开放。