linux学习第五十四篇:配置Tomcat监听80端口,配置Tomcat的虚拟主机,Tomcat日志
配置Tomcat监听80端口
通过网站访问的是80端口,我们直接输入IP就可以,但是8080端口要输入,而80端口是默认的,可以省略的。所以我们要配置Tomcat监听80端口
- vim /usr/local/tomcat/conf/server.xml Connector port=”8080” protocol=”HTTP/1.1”修改为Connector port=”80” protocol=”HTTP/1.1” 这里就是控制监听端口的,我们可以把8080改为80端口
- 改完配置文件后要重启服务,同时也需要查看80端口是否被占用,如果被占用就需要停掉占用的服务: /usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh 改完之后只需输入IP就可以访问而不用加上8080端口
配置Tomcat的虚拟主机
- vim /usr/local/tomcat/conf/server.xml 其中和之间的配置为虚拟主机配置部分,name定义域名, appBase定义应用的目录,Java的应用通常是一个war的压缩包,你只需要将war的压缩包放到appBase目录下面即可。刚刚访问的Tomcat默认页其实就是在appBase目录下面,不过是在它子目录ROOT里。 unpackWARs是是否自动解压war包。 docBase,这个参数用来定义网站的文件存放路径,如果不定义,默认是在appBase/ROOT下面,定义了docBase就以该目录为主了,其中appBase和docBase可以一样。在这一步操作过程中很多同学遇到过访问404的问题,其实就是docBase没有定义对。
- appBase为应用存放目录,通常是需要把war包直接放到该目录下面,它会自动解压成一个程序目录
- 下面我们通过部署一个java的应用来体会appBase和docBase目录的作用
- 下载zrlog: wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
- 把下载的war复制到Tomcat下的webapps下,war包会在appbase目录下自动解压: cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/
- 把war包解压后的文件改名为zrlog: mv /usr/local/tomcat/webapps/zrlog-1.7.1-baaecb9-release /usr/local/tomcat/webapps/zrlog
- 浏览器访问: http://192.168.118.133/zrlog/ 这里出现的是zrlog的安装向导,也就是配置数据库。因为之前我们把Tomcat的端口改为80端口,所以访问的时候不用在IP后面加上8080端口。
- vim /usr/local/tomcat/conf/server.xml 增加虚拟主机,编辑server.xml,在下面增加如下内容
<Host name="www.123.cn" appBase=""
unpackWARs= "true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="/data/wwwroot/123.cn/" debug="0" reloadable="true" crossContext="true"/>
</Host>
- 配置完之后要重启Tomcat服务: /usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh
- 把zrlog目录下的所有文件移动到docbase也就是/123.cn目录下: mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
- 在主机hosts中添加你虚拟机IP和配置文件中的域名www.123.cn,重启服务后,现在我们就可以通过域名访问我们的zrlog博客:
Tomcat日志
- Tomcat存放日志的路径: ls /usr/local/tomcat/logs
- 其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。
- 其中catalina.2017-xx-xx.log和catalina.out内容相同,前者会每天生成一个新的日志。
- host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。
- localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。
- 访问日志默认不会生成,需要在server.xml中配置一下。
- 具体方法是在对应虚拟主机的里面加入下面的配置(假如域名为123.cn):
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="123.cn_access" suffix=".log"
pattern="%h %l %u %t "%r" %s %b" />
- prefix定义访问日志的前缀,suffix定义日志的后缀,pattern定义日志格式。新增加的虚拟主机默认并不会生成类似默认虚拟主机的那个localhost.日期.log日志,错误日志会统一记录到catalina.out中。关于Tomcat日志,你最需要关注catalina.out,当出现问题时,我们应该第一想到去查看它。
扩展 邱李的tomcat文档 https://www.linuser.com/forum.php?mod=forumdisplay&fid=37 JAR、WAR包区别 http://blog.csdn.net/lishehe/article/details/41607725
tomcat常见配置汇总 http://blog.sina.com.cn/s/blog_4ab26bdd0100gwpk.html resin安装 http://fangniuwa.blog.51cto.com/10209030/1763488/ 1 tomcat 单机多实例 http://www.ttlsa.com/tomcat/config-multi-tomcat-instance/ 2 tomcat的jvm设置和连接数设置 http://www.cnblogs.com/bluestorm/archive/2013/04/23/3037392.html
3 jmx监控tomcat http://blog.csdn.net/l1028386804/article/details/51547408
4 jvm性能调优监控工具jps/jstack/jmap/jhat/jstat http://blog.csdn.net/wisgood/article/details/25343845
http://guafei.iteye.com/blog/1815222 5 gvm gc 相关 http://www.cnblogs.com/Mandylover/p/5208055.html
http://blog.csdn.net/yohoph/article/details/42041729
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Hadoop分块存储解析及还原分块存储的文件
- ValueError: too many values to unpack (expected 2)
- VMware15更新后克隆Centos7发现网卡起不来了
- 基于SSH的医院在线挂号
- Linux-远程拷贝(scp命令)
- Kettle使用JavaScript代码处理数据
- Hadoop入门---(wordcount)统计单词出现的次数
- JS去除字符串的空格
- insertionSoft(插入排序) 2.1-1 And 重写insertionSoft 2.1-2
- Swagger-Springboot-mybatis-mysql
- Python+java+websocket+SpringMVC实时监控数据库中的表
- 基于Java图形界面的IPV4与网址的地址解析器
- 如何在千里之外能访问自己的电脑?(FRP)
- 三分钟Docker-镜像、容器实战篇
- 看懂今天这个!你就是个真正的javaer!