云服务器上添加子域名并转发至 8080 端口上的 tomcat server

在云服务器上添加子域名,并配置 apache 将其转发至 8080 端口上的 tomcat server,原域名的访问不变。

目录
[隐藏]

情况是这样的,我有一个腾讯云主机,系统为 linux centos,并申请了域名 xiaogd.net,在其上面搭建了一个 wordpress 的站点,使用 apache server,这些目前都 OK。

新的需求

现在的问题是 wordpress 是用 PHP 语言,之前使用它的经验并不多,相对而言我更熟悉的是 Java 的技术栈,有时想在云上折腾点什么,觉得还是用回 Java 顺手一些。

于是乎,先是在云系统上装上 JRE,再装上 tomcat server,默认在 8080 端口上监听,启动后自然也能通过 8080 端口访问,像这样://xiaogd.net:8080

image

注意:如果安全组里限制了 8080 端口的访问,则需要放通,这个视具体安全组配置而定。(为安全起见,通常不建议放开太多的端口)

使用子域名访问的设想

当然,使用 8080 端口看上去总是不那么正规,于是萌生了使用子域名方式来转发的设想,具体规划如下:

  • 访问 //xiaogd.net/,则还是原来那样,对应原有的 wordpress 站点。
  • 访问 //exp.xiaogd.net/,则转发至 8080 端口上的 tomcat server。

示意图如下:

image

那么这里的 “exp.xiaogd.net” 就是一个二级子域名了。

配置子域名

首先需要配置这个二级域名,登录腾讯云管理中心,在“云产品–云解析”相应域名条目下,增加一条 A 记录,主机记录为 exp,还是指向原来的 ip 地址:

image

这样之后,二级域名就配置好了,大概 10 分钟后就能生效。

当然,此刻去访问 exp.xiaogd.net,则还是去到原来的 wordpress 页面,跟直接访问 xiaogd.net 是一样的。

image

接下来就要配置转发了。

配置转发

那么现在需要在 apache server 上做些文章了,简单讲就是将视作为一个前置的反向代理。具体做法是去到 apache 的安装目录下,进入 conf 文件夹,找到 httpd.conf 文件,在该配置文件的最后,改动之前它是这样的:

image

然后我们在最后再增加一个如下的虚拟主机的记录:

<virtualhost  *:80>
    ServerName exp.xiaogd.net    
    ProxyPassMatch ^/(.*)$ http://127.0.0.1:8080/$1
</virtualhost>

主机名填我们的二级域名,然后转到 127.0.0.1:8080 上。最终效果如下:

image

重启 apache server 后,再次访问 ,这一次则进入了 tomcat 的欢迎页。Done!

image

后记

以上就是整个配置的过程,我将其记录下来,有类似需求的同学可以做个参考,希望能有所帮助。我本身对运维这一块的了解也并不多,以上配置参考了网上的一些做法,如果你有更好的想法,或觉得上述过程有任何不妥当之处,欢迎留言讨论,谢谢!

《云服务器上添加子域名并转发至 8080 端口上的 tomcat server》有1个想法

发表评论

电子邮件地址不会被公开。