先说一下自己的需求:
我有一个 aaa.cn 的顶级域名,但是我已经在 aaa.cn 上部署了 nginx 静态项目,占用了 80 端口。
现在我想在服务器上部署一个 JavaWeb 项目,部署在阿里云的 Tomcat 服务器上,占用 8080 端口。现在我能通过端口访问到这个项目,路径是:124.22.55.xx:8080 这样。(添加了 <context docbase="">这段配置而可以直接配置到 Tomcat 根目录下)。</context>
So,我现在需要创建一个二级域名比如:tt.aaa.cn 这个二级域名应该映射到我服务器上的 8080 端口项目,即实现: tt.aa.cn => aaa.cn:8080 的映射关系。
尝试过:在阿里云 云解析 DNS 上设置一个二级域名,直接用显性 URL 方式重定向到 aaa.cn:8080 这个地址:
但是并不能实现隐藏端口号,也就是这个二级域名实际重定向的地址仍然:aaa.cn:8080,有端口号。
阿里云提供了显性 URL=重定向和隐性 URL 方式,隐性 URL 会隐藏端口号,能实现访问 tt.aa.cn 直接访问到 Web 项目,而且浏览器地址上不显示端口号,但是,这中隐性 URL 方式,整个项目都被包裹了。
那么我应该怎么配置呢?希望能得到大家的帮助。
注:我使用的是阿里云的服务器,阿里云的域名。如果方便的话能贴图就更好了。
1
lhx2008 2018-11-15 16:16:10 +08:00 via Android
本质上就是 8080 转 80,不是跳转,你那个 80 的 nginx 配置下反代 8080 端口,然后把你那个二级域名解析 A 记录就可以了。
|
2
nolo 2018-11-15 16:21:42 +08:00 via Android
跟阿里云没有关系,先学一遍计算机网络。域名解析没法实现对端口的映射。
|
3
2exploring 2018-11-15 16:45:01 +08:00
不是很清楚你的配置情况。
你在 aaa.cn 上部署的 nginx 静态项目和你的阿里云 tomcat 服务器是同一台吗? 如果不是,直接让你的 tomcat 监听 80 端口就好了呀,或者用 nginx 监听 80 然后反向代理。 如果是在同一台服务器上,那你用 virtual host 方法就可以在同一个端口上运行多个网站,同样用到反向代理技术。 另外再说一下个人的看法:DNS 解决的是域名到 ip 地址的映射关系,属于网络层的范畴,和传输层的端口没有关系。 |
4
aaa5838769 2018-11-15 16:52:42 +08:00
跟端口没关系吧- -
|
5
andy1ee11o2 2018-11-15 17:16:39 +08:00
用 nginx 端口转发不就 ok
|
6
annielong 2018-11-15 18:14:05 +08:00
域名解析跟端口没关系
|
7
Tolcol 2018-11-15 18:16:11 +08:00
DNS 解析到服务器,然后在用 nginx 根据不同的域名做端口转发
|
10
TyCoding OP @2exploring 嗯嗯,非常感谢解答
|
11
TyCoding OP @aaa5838769 嗯嗯,谢谢
|
12
rudyyuan 2018-11-16 09:41:35 +08:00 via Android
http 默认端口 80,否则就要显式指定
|