从一个球童重定向到另一个球童时出现 502
502 when redirecting from one caddy to another
所以我有一个 Master
caddy,它重定向到 LAN 内的另一台服务器。
Master
的当前配置如下:
http://example.com {
proxy / http://192.168.1.153:80 {
transparent
}
}
https://example.com {
proxy / https://192.168.1.153:443 {
transparent
}
}
而192.168.1.153
的caddy配置如下:
http://example.com, https://example.com {
root /example.com
}
http://example.com works fine but https://example.con 给出 502 Bad Gateway。
如果我使用 insecure_skip_verify
我会收到 403...而且我不想使用它。
80和443都在路由器上打开,重定向到Master caddy。我的配置一定有问题,但我看不到它是什么。
PD
我试过:
192.168.1.153:443
None 似乎有效。
已更新解决方案
http://example.com {
redir https://{host}{uri}
}
https://example.com {
proxy / 192.168.1.153:80 {
transparent
}
}
这也将 80 重定向到 443,但要注意的是 192.168.1.153 上的 "slave" 必须在端口 80 上响应,而不是在 443 上响应。因为 80 在球童大师。
当然不行。您至少有 2 台服务器,每台服务器都具有不同的 IP。那么,让我向您解释一下。
一台服务器将其 IP 绑定到 dns example.com
,因此其 Caddyfile 可以在 http://example.com
上侦听。此外,此 caddyfile 重定向到 IP 地址为 192.168.1.153
的服务器(第二台服务器)。
第二台服务器既没有将 dns example.com
绑定到它的 IP,也不应该监听那个 dns。相反,您应该在其 IP 处更改其侦听器或仅定义端口。这是第二个 caddyfile 的样子。
:80 {
tls off
root /example.com
}
关于启用 SSL
您没有为 SSL 分配证书,因此在 443 添加 https:// 甚至侦听器没有意义。在获得证书之前将其保留在 http 中。
可以全程加密代理到另一个 HTTPS 后端。
您只需要指定发送到后端服务器的SNI即可。
使用 Caddy v2:
http://exmaple.com {
reverse_proxy http://192.168.1.153
}
https://example.com {
reverse_proxy https://192.168.1.153 {
transport http {
tls_server_name example.com
}
}
}
在后端,照常收听:
example.com {
# Do whatever here
}
所以我有一个 Master
caddy,它重定向到 LAN 内的另一台服务器。
Master
的当前配置如下:
http://example.com {
proxy / http://192.168.1.153:80 {
transparent
}
}
https://example.com {
proxy / https://192.168.1.153:443 {
transparent
}
}
而192.168.1.153
的caddy配置如下:
http://example.com, https://example.com {
root /example.com
}
http://example.com works fine but https://example.con 给出 502 Bad Gateway。
如果我使用 insecure_skip_verify
我会收到 403...而且我不想使用它。
80和443都在路由器上打开,重定向到Master caddy。我的配置一定有问题,但我看不到它是什么。
PD
我试过:
192.168.1.153:443
None 似乎有效。
已更新解决方案
http://example.com {
redir https://{host}{uri}
}
https://example.com {
proxy / 192.168.1.153:80 {
transparent
}
}
这也将 80 重定向到 443,但要注意的是 192.168.1.153 上的 "slave" 必须在端口 80 上响应,而不是在 443 上响应。因为 80 在球童大师。
当然不行。您至少有 2 台服务器,每台服务器都具有不同的 IP。那么,让我向您解释一下。
一台服务器将其 IP 绑定到 dns example.com
,因此其 Caddyfile 可以在 http://example.com
上侦听。此外,此 caddyfile 重定向到 IP 地址为 192.168.1.153
的服务器(第二台服务器)。
第二台服务器既没有将 dns example.com
绑定到它的 IP,也不应该监听那个 dns。相反,您应该在其 IP 处更改其侦听器或仅定义端口。这是第二个 caddyfile 的样子。
:80 {
tls off
root /example.com
}
关于启用 SSL 您没有为 SSL 分配证书,因此在 443 添加 https:// 甚至侦听器没有意义。在获得证书之前将其保留在 http 中。
可以全程加密代理到另一个 HTTPS 后端。
您只需要指定发送到后端服务器的SNI即可。
使用 Caddy v2:
http://exmaple.com {
reverse_proxy http://192.168.1.153
}
https://example.com {
reverse_proxy https://192.168.1.153 {
transport http {
tls_server_name example.com
}
}
}
在后端,照常收听:
example.com {
# Do whatever here
}