公司架构:公司架构有5套,主机都是阿里云的ecs,基本上都是SLB做前端负载均衡,后端Tomcat,后接RDS数据库。

业务需求:需要将公司现有网站指向一个二级域名,建立一个新的静态网站,将域名指向现在公司的主网站域名。。

部署思路:对于这个需求可以建立一个新的二级域名project,将公司现有的网站重新解析到project;然后建立一个新的静态网站,将其放到SLB后端做后端服务器,然后将公司原来的

域名解析到这个新网站上。

如下图:

其中最主要的是先建立一个静态网站,下面是收到开发发来的静态网站部分截图:

首先接到这个网站,我也是蒙的,我不确定是否能在Tomcat运行,于是双击了其中一个页面,确实能打开,接下来就说具体的操作步骤:

1.快照服务器

做任何有可能影响服务器数据的操作都要备份或者快照,于是我采用了最保险的快照方式,100G的硬盘做完差不多1个小时了,但是,我还是不放心,于是又手动备份了一份。

尽管这是个测试服务器,但是安全的思路都是一样的。

[root@iZ27fv4euZ /]# cp data data.bak -ap
[root@iZ25c7fv4euZ /]# ls
bin data dev home lib64 media opt root selinux sys usr
boot data.bak etc lib lost+found mnt proc sbin srv tmp var

2.测试网站

首先要测试下,原来的站点服务器是否能够正常访问,排除部署时服务器原本的问题

 [root@iZ27fv4euZ ~]# netstat -lnupt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 127.0.0.1: 0.0.0.0:* LISTEN /java
tcp 0.0.0.0: 0.0.0.0:* LISTEN /sshd
tcp 127.0.0.1: 0.0.0.0:* LISTEN /java
tcp 0.0.0.0: 0.0.0.0:* LISTEN /java
tcp 0.0.0.0: 0.0.0.0:* LISTEN /java
udp 101.200.144.159: 0.0.0.0:* /ntpd
udp 10.170.244.221: 0.0.0.0:* /ntpd
udp 127.0.0.1: 0.0.0.0:* /ntpd
udp 0.0.0.0: 0.0.0.0:* /ntpd
[root@iZ27fv4euZ ~]#

端口查完后,要打开网页看看是否能正常访问。访问没有问题后,就可以停止Tomcat服务,进行下一步。

3.清空Tomcat站点目录

[root@iZ27fv4euZ /]# cd /drta/webapps/

[root@iZ25c7fv4euZ webapps]# ls

4.将window下能正常访问的站点目录下文件全部拖入Linux服务器的Tomcat站点目录webapps下

在这一点,我犯个错误,刚开始拖入之前,我发现Tomcat的webapps下面有好几个文件夹,如js,css,images,这些正好在我这个静态网站中也有相应的js程序,css程序,图片等,于是我在Tomcat的站点目录webapps下手动创建了这三个文件夹,并将静态资源分类放入这三个文件夹中,但是准备工作结束后,启动Tomcat,发现返回的网页并不是我所部署的网站。

于是,重新回到自己的虚拟机上,重新部署,不分文件夹了,直接全部拖入,启动Tomcat服务,结果成了。

5.ip加端口访问静态网站。

至此,静态网站在Tomcat上就部署成功了,接下来就是配置域名的工作了。

6.配置域名

进入到阿里云域名控制台,添加一个临时的二级域名mao,解析到SLB负载均衡服务器上。这个负载均衡服务器下文会提到。

再添加一个二级域名project,将其解析到公司原本的官网所在的前段SLB上,然后暂停解析,等所有工作测试完毕后,再启用解析。

7.修改SLB后端服务器

公司现有5台SLB负载均衡,于是我选用了一台架构比较简单的,后端只有一台Tomcat服务器。

在负载均衡服务器的后端服务器上将已添加的服务器移除,这里的移除并不是释放服务器,只是暂时移除SLB后端的服务器池,需要时,随时可以添加回来,当然,我这里的移除是征求过开发小伙伴的同意,没有业务,没有测试的情况下。

移除原本服务器后,将我刚才部署的那个Tomcat静态服务器添加上,作为后端服务器。

8.域名访问

经过以上的操作,基本上我们的配置基本上完成,接下来的操作就是将二级域名www解析到这个新建立的静态服务器前端SLB上;将二级域名project解析到现在官网的SLB上即可。

后记:在这部署的时候,由于开发给我的没有主页文件,主页是一个about.html的网页,访问的时候域名后面还要加上about.html,于是我想是否可以把这个文件改个名字,改成默认的主页文件index.html(改之前先备份),改完后访问,果然不用加about.html就可以访问主页,但是访问那个about.html页面的时候,发现没有找到这个网页的错误。

于是我想到刚才还有一个备份,于是将备份改成了about.html。

再次测试时,发现网站正常运行。

Tomcat部署静态网站的更多相关文章

  1. Docker 案例: 在容器中部署静态网站

    ----------------知识点------------ 容器的端口映射: docker  run  [-P] [-p] -P,–publish-all=true | false,大写的P表示为 ...

  2. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署静态网站(一)--技术流ken

    前言 在之前已经写了关于Git,Gitlab以及Ansible的两篇博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>,<Git+Gitlab+A ...

  3. 使用Nginx部署静态网站

    这篇文章将介绍如何利用Nginx部署静态网站. 之前写过2篇有关Nginx的文章,一篇是<利用nginx,腾讯云免费证书制作https>,另外一篇是<linux安装nginx> ...

  4. Docker 在容器中部署静态网站

    Docker 在容器中部署静态网站 在容器中部署静态网站 设置容器的端口映射 run -P``--publish-all=true|false:容器暴露的所有端口进行映射 -p``--publish= ...

  5. Linux下Apache服务部署静态网站------网站服务程序

    文章链接(我的CSDN博客): Linux下Apache服务部署静态网站------网站服务程序

  6. 【笔记】nginx部署静态网站

    安装nginx 本地到官网下载,然后把压缩包传到服务器上 安装三个依赖 apt-get install libpcre3 libpcre3-dev apt-get install zlib1g-dev ...

  7. 使用Apache服务部署静态网站2019-7-5

    使用Apache服务部署静态网站 第1步:把镜像挂载到系统中 第2步:使用vim文件编辑器创建YUM仓库的配置文件 [root@study ~]# vim /etc/yum.repos.d/abc.r ...

  8. 《Linux就该这么学》培训笔记_ch10_使用Apache服务部署静态网站

    <Linux就该这么学>培训笔记_ch10_使用Apache服务部署静态网站 文章最后会post上书本的笔记照片. 文章主要内容: 网站服务程序 配置服务文件参数 SELinux安全子系统 ...

  9. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署静态网站(一)

    在之前已经写了关于Git,Gitlab以及Ansible的两篇博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>,<Git+Gitlab+Ansi ...

随机推荐

  1. 关于在Andoird集成开发软件中添加外部jar包的方法

    步骤必须是下面的两步,少一步都不行. 第一步是存放于项目中,第二步是导入和应用于项目中. 1.右键项目-Build Path-Configure Build Path-在Libraries目录下-点右 ...

  2. IE屏蔽鼠标右键、禁止复制粘贴等功能

    <body oncontextmenu="return false" onselectstart="return false" ondragstart=& ...

  3. java动态代码的实现以及Class的卸载 (转至http://dustin.iteye.com/blog/46393)

    JavaWorld一篇题为 Add dynamic code to your application 的文章介绍了如何使用动态代理技术使普通的java源代码具有像jsp一样的动态编译效果,十分有趣.  ...

  4. ubuntu下android源码的下载(最新)

    在ubuntu下下载android源码我断断续续搞了好几个月,希望大家不要向我学习啊!一次性搞定! 这里给大家一些建议啊,如果是看书的话看下书的出版日期,超过一年的基本上失效,网上的也是,特别是在国内 ...

  5. erlang的简单模拟半包的产生

     gen_tcp:linsten()/2使用的是{packet,2/4/8},则gen_tcp模块在接受或者发送时自动除去包头或者自动加上包头. 本例中使用的是{packet,0}. -module( ...

  6. CentOS系统资源常用命令

    系统: # uname -a   # 查看内核/操作系统/CPU信息 # cat /etc/issue # cat /etc/redhat-release # 查看操作系统版本 # cat /proc ...

  7. Java基础--常用IO流使用实例

    读取文本文件: private static void ioDemo1() { try { FileReader fileReader = new FileReader("C:\\Users ...

  8. 【MFC】OnInitDialog

    OnInitDialog OnInitDialog是MFC的面向对象编程语言的类CDialog中的初始化成员函数名(虚函数).相当于对对话框进行初始化处理.   属    性 初始化成员函数名 处   ...

  9. How do I commit all deleted files in Git?

    Try this: $ git add -u This tells git to automatically stage tracked files -- including deleting the ...

  10. NYOJ467 中缀式变后缀式 【栈】

    中缀式变后缀式 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描写叙述 人们的日常习惯是把算术表达式写成中缀式,但对于机器来说更"习惯于"后缀式.关于算术 ...