浏览器如何确定应向哪个端口发出请求?

问题描述 投票:0回答:1

当浏览器向 Web 服务器创建请求时,它们会添加包含源端口和目标端口的第 4 层标头。源端口是客户端计算机上自由选择的随机端口,而目标端口是 HTTP 的 80 或 HTTPS 的 443。但是,如果 Web 服务器侦听 80 或 443 以外的端口怎么办?请求如何到达目的地?

我知道端口转发,我们也可以直接在URL中指定端口号,格式为PROTOCOL://DOMAIN_NAME:PORT_NUMBER。还有其他方法吗?

http networking request port portforwarding
1个回答
0
投票

浏览器通常支持 URL 类型白名单。

对于是否将它们描述为方案(URL 的前缀)或协议(无论通过网络传输的内容),经常存在一些分歧。

但是当浏览器接受 URL 时,如果 URL 中没有指定端口号,则将使用默认端口。通常,浏览器有一个内部列表(换句话说,大多数浏览器不会遵守

/etc/services
)。

浏览器通常支持各种形式的代理,例如“CONNECT”和各种版本的“SOCKS”,但通常浏览器不允许默认端口的可配置重定向,因为这些是广泛分布的最终用户应用程序。

这些代理配置会将所有请求发送到代理服务器的端口。如果您想要真正的奇特,PAC 文件允许代理使用的动态映射。

从编码的角度来看,如果您在内部使用 URL 引用,则应该始终考虑使用显式端口号。

© www.soinside.com 2019 - 2024. All rights reserved.