1

我的网络主机已经提供了在我的域上配置的 SSL,所以我想使用 Caddy 服务器将 HTTP 流量重定向到 HTTPS,使用文档中的“仅当转发的协议是 HTTP 时才重定向”示例。问题是浏览器无法呈现我的球童配置页面。转到 URL 显示错误:

页面未正确重定向。连接到 **** 时发生错误。此问题有时可能是由禁用或拒绝接受 cookie 引起的。(火狐)

此页面无法正常工作 **** 将您重定向了太多次。尝试清除您的 cookie。ERR_TOO_MANY_REDIRECTS(铬)

这是我的球童档案

0.0.0.0:{$PORT} {
  bind {$ADDRESS}
  proxy / 0.0.0.0:{$API_PORT}
  redir 301 {
    if {>X-Forwarded-Proto} is http
    /  https://{host}{uri}
  }
}

我的主机提供 $PORT=8080 作为 Web 流量的主要入口点,因此我启动了 NodeJS 应用程序来监听 $API_PORT=9090。我的期望是 Caddy 接收端口上的所有流量0.0.0.0:8080并将所有非 HTTPS 请求重定向到我在端口上的 NodeJS 应用程序0.0.0.0:9090。我喜欢这个想法,因为我不想将网络逻辑放在应用程序中,但也许我错了。

Caddy 和 NodeJS 在同一台机器上。

4

0 回答 0