现在又碰到个问题:
tunnel 访问内网的服务只能走 http ,但是 authelia 之类的服务访问只支持 https 。虽然浏览器访问是走的 https ,但是内网的 nginx 收到的请求其实还是 http 的,所以 authelia 会拒绝访问。
怎么才能让 authelia 这类服务知道,我其实是走的 https 访问呢?
类似的困扰: https://github.com/authelia/authelia/discussions/7420
尝试注入 X-Forwarded-Scheme 之后发现并没有作用,也可能是没注入成功= =
我碰到的问题,可能是使用 Nginx Proxy Manager 才能遇到。这里说一下参考的解决方案:
参考: https://github.com/NginxProxyManager/nginx-proxy-manager/issues/2696#issuecomment-1475065806
tunnel 配置的 public hostname ,可以使用通配符域名,比如:*.example.com ,service 配置位: https://192.168.0.254:443
需要在 Additional application settings -> TLS -> Origin Server Name 中配置一个使用中的子域名( demo.example.com )
这样就可以正常访问了,也不会有以上的困扰咯。