如何创建指向不同端口号的子域名?

如何创建指向不同端口号的子域名?

在我的用例中,我想创建一个具有主域 IP 地址但具有不同端口号的子域。例如:

abc.com我有指向的主域192.168.1.1

@              192.168.1.1

我想创建一个端口为 8081 的子域,如下所示,

api.abc.com    192.168.1.1:8081

但看起来这是不可能的。所以我尝试使用以下信息创建一条 SRV 记录,

Name: api
Target: api.abc.com
Protocol: _http
Service: _http
Priority: 5
Weight: 5
Port: 8081
TTL: 1 hour

但这没有帮助。有什么办法可以实现吗?我正在使用 GoDaddy 来管理我的域名。

有人可以帮我吗?

答案1

您不能为域名或静态定义的主机名分配端口号。

主机名被翻译成IP地址端口号是添加到 IP 地址的单独数字。


DNS服务记录 (SRV)允许您定义服务包括其 IP 地址和端口号,但这需要一个特定的应用程序来查询 DNS 以获取 SRV 记录(RFC2782称他们为“SRV 认知客户”)。

使用 HTTP 协议连接的浏览器将始终连接到端口号 80(除非在客户端指定了该端口http://...:8080/)。它不会向 DNS 查询 SRV 记录。


根据您的使用情况,您可以配置 HTTP 服务器(或反向代理)以根据浏览器提供的 HTTP 标头重定向连接Host。此功能通常称为“虚拟主机”。

在这种情况下,您的服务器将在端口 80 上监听外部连接,并检查客户端请求的地址。如果是,api.abc.com它会将连接转发到内部端口 8081(最常见的配置是添加内部端口,即 127.0.0.1:8081),否则它将提供您常规网站的内容。

如果客户端浏览器支持 SNI(大多数当前浏览器都支持),则也可以进行 HTTPS 连接。

相关内容