我在端口:5000上有一个Java监听器。由于我的服务器上有一个公共IP地址,所以它可以在如下所示的地方使用:
123.123.123.123:5000它是好的。
但是现在,如果我不想使用IP地址,而是使用域名呢?如何使我的域名被应用在IP地址之上。我是说,就像:
www.example.com:5000我的DNS已经指向了服务器。但我不知道如何应用(或)将域名绑定到这样的现有端口。
请帮忙指点。我的人际关系知识很差。能用NGINX什么的吗?
在某个地方,我了解到这与Reverse Proxying有关,而NGINX可以做到这一点。所以我试了一下:
server {
listen 5050 default_server;
server_name www.example.com;
location / {
proxy_pass http://123.123.123.123:5000;
}
}正如你所能想象的那样,它现在的工作是:
http://www.example.com:5050但是:它仍然不能完全解决我的问题。因为我不希望另一个不同的端口被使用(或)打开。
如何使用与应用程序侦听的端口完全相同的端口(在本例中是端口:5000)?
发布于 2017-11-09 01:47:24
大多数情况下,DNS服务器只提供对IP地址的域名转换。
编辑新注释后的更新
DNS翻译最基本的记录是A记录。此记录将为域名请求返回。
DNS的规范之一是RFC 1035。第20页是A唱片格式。注意,记录是一个包含IP地址的32位字段.没有IP端口字段。
翻译TCP / UDP端口不是DNS名称转换的一部分。
港口转发完全不同。创建一个新的问题来涵盖这个主题。
发布于 2017-11-09 06:56:03
当您在浏览器中键入URL时,如果不提供端口,则该方案将将浏览器引导到默认端口,例如http -> 80、https -> 443等。没有与端口5000相关联的方案,因此您必须使用不同的方法来提供它,而DNS通常不是解决方案的一部分。
您的选项是使用url中的端口,使用反向代理,使用防火墙对端口进行DNAT或其他什么。
幸运的是,在服务器故障和更广泛的互联网上,您可以在这里找到以下许多问题的答案。你有很多的阅读和研究要做-编织。
如何使用与应用程序侦听的端口完全相同的端口(在本例中是Port :5000)?
考虑到其他限制,您可以在URL中提供一个端口。
https://serverfault.com/questions/882568
复制相似问题