这一D,跨越了几个月啊,人是越来越懒,集中写一些,就懒得再记录了。也是因为测试需要,搭建个jsp的服务环境,只是测试,考虑用tomcat就够了。

在Tomcat官网下载最新Core版本,下载之后,将文件解压缩在/usr/local/tomcat8.0.21。前提是要安装了JDK。

1、创建系统变量

修改/etc/profile,添加:

CATALINA_HOME='/usr/local/tomcat8.0.21'
CATALINA_BASE=$CATALINA_HOME
PATH=$PATH:$CATALINA_HOME/bin
export CATALINA_HOME CATALINA_BASE PATH

2、虚拟主机,和应用程序配置

可以直接修改$CATALINA_HOME/conf/server.xml文件,在里面进行修改,修改内容主要在Service节点的子节点Engine节点下,一个典型的配置如下:

 <Host name="domain" appBase="网站目录" />

“domain”为网站域名;“网站目录”可以是 $CATALINA_HOME 下的子目录,也可以是系统绝对路径,例如:/data/web/demo。

但是此时在此目录下创建index.jsp时,你会发现并无法访问。这是因为Tomcat的应用管理逻辑,有如下两个方案可以尝试操作:

1) 创建网站默认的应用

<Host name="domain" appBase="网站目录">
<Context path="/|" docBase="网站目录" />
</Host>

Context节点创建了一个子应用,path为路径,可为空或者/,都表示"domain"下的根应用;"网站目录"同于Host配置。

2)将文件存储在ROOT子目录中

ROOT是Host默认的子应用,可以在Host节点中,appBase属性指定的目录下面,创建ROOT目录用于存放文件。

3、启动

配置完成后,可以使用bin目录下的configtest.sh来测试配置文件,startup.sh启动服务,shutdown.sh关闭服务。

启动之后,即可使用http://domain:8080/的方式来访问网站。

4、安全管理

Tomcat自带一个管理工具,可以管理Host和Context,可以通过http://localhost:8080/访问管理首页。如下图:

可以看到右上方,有几个管理入口,此时管理时匿名的,只要进入就可以操作,这是不安全的行为,此时要修改$CATALINA_HOME/conf/tomcat-users.xml文件,修改其中的role和user配置字节,例如:

<role rolename="admin" />
<role rolename="admin-gui" />
<role rolename="admin-script" />
<role rolename="manager-gui" />
<role rolename="manager-script" />
<role rolename="manager-jmx" />
<role rolename="manager-status" /> <user username="gary" password="" roles="admin,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" />

role字节,表示启用哪些Tomcat默认的管理角色,User字节,创建了管理人员信息,同时赋予对应的角色功能。

5、扩展操作

Tomcat自带的管理工具还是不错的,可以管理Host、App,那么,是否可将管理工具用于每一个虚拟子站中?当然是可以的!!!

方法就是利用官方的管理工具创建Host,如图:

意义同于server.xml里的配置项,只是Manager App务必要勾选上,点击Add之后,会在$CATALINA_HOME/conf/Catalina下生成同name的目录,里面就包含一个manager.xml文件。

然后,按照之前的虚拟主机配置方法,修改server.xml添加主机之后,即可使用:http://domain:8080/manager管理该主机了。

注意:

1). 在点击了“Add”之后,会发现在上方的"List Host"列表中出现了新添加的主机,但是在Tomcat重启后,会无效,这应该是因为Tomcat运行权限的问题,无法写入Tomcat配置文件,这个问题以后再考虑研究一下;

2). 虚拟主机中配置好的管理应用,不会有过多的管理项,只有对Contex的管理。

阿里云ECS每天一件事D7:安装tomcat8.0的更多相关文章

  1. 阿里云ECS每天一件事D1:配置SSH

    近期因为项目需求,采购了两台阿里云ECS,选择的系统为CentOS 6.3 X64 安全加固版,额外买了160G的硬盘,应该够应付此项目的需求了. ECS默认已经配置好了sshd服务,可以使用root ...

  2. 阿里云ECS每天一件事D2:配置防火墙

    在linux中配置防火墙是一件比较有风险的事情,尤其是在ECS中,一个不当心的操作,可能就会需要重置服务器. 包括阿里云的官方建议,不要配置防火墙,没有必要什么的吧啦吧啦…… (http://bbs. ...

  3. 阿里云ECS每天一件事D5:安装php5.4.34

    原本是想把php和nginx合在一起来说的,不过考虑后,还是分开来做吧,已熟悉的更透彻一些. 1.准备类库 yum install autoconf automake libtool re2c fle ...

  4. 阿里云ECS每天一件事D3:挂载硬盘

    阿里云的系统盘通常都不大,对于我们的日常使用,基本不足,因此都会额外购买至少一块硬盘,作为存储数据之用. 数据盘要经过分区.格式化.挂载三个步骤,方能正常使用.  1.数据盘的分区 先使用fdisk命 ...

  5. 阿里云ECS每天一件事D9:nginx1.7整合tomcat8.0

    仅通过8080端口访问jsp显然不是一算是一个太好的方法,可以使用nginx的proxy_pass子模块,实现nginx转发jsp请求至tomcat. 典型的配置如下: server { listen ...

  6. 阿里云ECS每天一件事D8:nginx1.7整合php5.4

    nginx本身的并不能解析php或者jsp,要转发给后端的php或者tomcat以及其他类似的应用程序服务器来提供服务. 首先我需要完成的配置是实现与php的整合,典型的配置信息如下: server ...

  7. 阿里云ECS每天一件事D6:安装nginx-1.6.2

    自从接触nginx就开始喜欢上这个小东西了,似乎没什么特别的原因,就是喜欢而已. 1.安装环境的准备 yum install pcre pcre-devel openssl openssl-devel ...

  8. 阿里云ECS每天一件事D4:安装mysql5.5.40

    Linux平台上MySQL也没什么好说的了,首先准备一下软件环境: yum install gcc gcc-c++ gcc-g77 autoconf automake make cmake bison ...

  9. 阿里云ECS 环境是CentOS 7.3安装mongodb3

    CentOS安装mongodb https://www.cnblogs.com/zddzz/p/10069912.html CentOS安装mongodb 我的是阿里云ECS 环境是CentOS 7. ...

随机推荐

  1. 20151210--MVC

    package com.hanqi; import java.io.IOException; import java.sql.*; import java.text.SimpleDateFormat; ...

  2. 跨域文件crossdomain.xml在weblogic上的部署

    1.新建一个ROOT文件夹,把crossdomain.xml拷贝到这个文件夹下. 2.在ROOT文件夹下新建一个WEB-INF文件夹 3.在WEB-INF文件夹下建立一个weblogic.xml文件, ...

  3. C语言学习——C程序的运行机理

    预处理: #include<xxx> 尖括号表示库文件:#include"xxx" 双引号表示自己写的文件. #include后面的文件格式允许多种,但若要是" ...

  4. EBS OAF中如何在多行表中实现附件功能

    EBS OAF中如何在多行表中实现附件功能 (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) 在OAF中使用附件功能之前,要先明白Entity( ...

  5. HTTP协议中的1xx,2xx,3xx,4xx,5xx状态码分别表示什么,列举常见错误码及含义

    转自:http://m.blog.csdn.net/blog/u013857407/21741847 HTTP协议状态码,是指在HTTP协议运作中由客户端发出请求连接,服务端建立连接,客户端发出HTT ...

  6. JavaWeb基础之tomcat部署

    有些东西,看起来简单,做起来也简单,简单的你并不一定知道! 问题:如何将一个java project转变为 web project,并使其自动部署到tomcat? 1.先建立一个Java Projec ...

  7. DataGuard failover dg role自动切换模式测试

    1,在脚本中代入create db flash backup point for recover dg 2,测试前主备库状态(备库现角色验证,主库监听状态-->有意stop) 主要验证思路, 脚 ...

  8. javascript数组去重算法-----4(另一种写法)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. hdu 2850 Load Balancing (优先队列 + 贪心)

    题目大意: 怎么分配n个任务到m个server上使得负载尽量平衡. 思路: 将任务从大到小排序,依次放入负载最小的那个server中. 由于是spj 的缘故,所以能够使用这个贪心. 比方数据 6 2 ...

  10. SQL Server索引进阶:第十三级,插入,更新,删除

    在第十级到十二级中,我们看了索引的内部结构,以及改变结构造成的影响.在本文中,继续查看Insert,update,delete和merge造成的影响.首先,我们单独看一下这四个命令. 插入INSERT ...