我正在使用很多 docker 容器,包括 nginx 等等。
我的 API 可在配置的主机名上使用,例如:
api.local.awesome.com/api/
是否有可能以某种方式检查它正在使用哪个端口?
需要通过<IP>:<port>
配置来配置该 API 的全局访问。
看起来我已经api.local.awesome.com
在 8001 端口上,但是它无法通过以下方式工作:
192.168.1.3:8001/api/
- 这根本不起作用。
192.168.1.3:8001
- 这对根端点有效。
顺便说一句,api.local.awesome.com/api/
效果很好。
我也尝试ngrok
在端口 8001 上使用,但它的工作方式与 相同192.168.1.3:8001
。
有什么建议吗?如何知道正确的端口?
答案1
如果您通过 HTTP 连接,且 URL 中没有端口号,则端口为 80。
如果您通过 HTTPS 连接,且 URL 中没有端口号,则端口为 443。
编辑以添加:如果您通过同一 IP 地址上的多个主机名提供多个网站(有时称为虚拟主机),则无法通过 IP 地址连接到服务器,因为您的浏览器(或其他用户代理/ HTTP 客户端)不知道在 HTTP 请求的“Host:”标头中提供哪个域名,因此服务器不知道哪个域名的网站为您提供服务。