![使用 Cloudflare Tunnel 根据端口匹配流量](https://linux22.com/image/787337/%E4%BD%BF%E7%94%A8%20Cloudflare%20Tunnel%20%E6%A0%B9%E6%8D%AE%E7%AB%AF%E5%8F%A3%E5%8C%B9%E9%85%8D%E6%B5%81%E9%87%8F.png)
我目前正在设置 Cloudflare 隧道进行测试。我的原始服务器上有一个可用的隧道设置,该服务器运行 nginx 作为反向代理,并有多个主机名,每个主机名分别在端口 443 和 2096 上运行 2 个不同的服务。即:
a.example.com:443
a.example.com:2096
b.example.com:443
b.example.com:2096
…
根据主机名匹配流量效果很好,但我现在无法正确区分基于这两个端口的流量。也就是说,当我访问时,https://a.example.com:2096
我也会被重定向到在端口 443 上运行的服务。
我的 cloudflared config.yaml 文件中的入口规则现在如下所示:
ingress:
- hostname: a.example.com
service: https://localhost:443
originRequest:
originServerName: a.example.com
- hostname: a.example.com
service: https://localhost:2096
originRequest:
originServerName: a.example.com
- service: http_status:404
我省略了 nginx 配置,因为当仅将 A 记录指向原始服务器的 IP 并通过 cloudflare 代理流量时,它现在工作正常。
有人能给我指点一下如何让它正常工作吗?TIA!