16.1 Tomcat介绍
16.2 安装jdk
16.3 安装Tomcat
16.4 配置Tomcat监听80端口
16.5/16.6/16.7 配置Tomcat虚拟主机
16.8 Tomcat日志php
扩展
java容器比较 http://my.oschina.net/diedai/blog/271367
http://www.360doc.com/content/11/0618/21/16915_127901371.shtml
j2ee、j2se、ejb、javabean、serverlet、jsp之间关系 http://bbs.csdn.net/topics/50015576
tomcat server.xml配置详解 http://blog.csdn.net/yuanxuegui2008/article/details/6056754
JAR、WAR包区别 http://blog.csdn.net/lishehe/article/details/41607725
html
1、Tomcat介绍java
Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其余一些公司及我的共同开发而成。 java程序写的网站用tomcat+jdk来运行。 tomcat是一个中间件,真正起做用的,解析java脚本的是jdk。 jdk(java development kit)是整个java的核心,它包含了java运行环境和一堆java相关的工具以及java基础库。 最主流的jdk为sun公司发布的jdk,除此以外,其实IBM公司也有发布JDK,CentOS上也能够用yum安装openjdk。 咱们已经学过了LAMP和LNMP架构;针对的开发语言是PHP;能够说PHP是一门开发Web程序很是流行的语言;早期比较流行的是asp,是在windows平台上运行的一种编程语言;可是由于安全性不高;因此愈来愈多作网站的人用php去开发网站,相对来讲也是比较安全的。 除了PHP外,还有一门语言叫java;java是一门很是庞大的开发语言;不只仅是能够开发开网站;也能够开发大型的软件、工具、甚至是游戏均可以;tomcat其实是一个中间件,用来运行Java语言写的网站;那咱们php写的代码,要用php去解析;java就要用tomcat加上JDK一块儿去解析。
2、安装jdkmysql
官网下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmllinux
下载好jdk,用xftp传输到linux虚拟机root下nginx
mv jdk-8u211-linux-x64.tar.gz /usr/local/src/ 移动到src目录下web
tar zxvf jdk-8u211-linux-x64.tar.gz 解压sql
du -sh jdk1.8.0_211/ 查看大小数据库
mv jdk1.8.0_211/ /usr/local/jkd1.8 //移动并更名apache
vim /etc/profile 编辑环境变量的配置文件,最后面添加
JAVA_HOME=/usr/local/jdk1.8/ JAVA_BIN=/usr/local/jdk1.8/bin JRE_HOME=/usr/local/jdk1.8/jre PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
source /etc/profile //加载服务
java -version //查看java版本 正常显示,即安装成功
3、安装Tomcat
其实Tomcat只是一个中间件,真正起做用的就是已经安装的jdk。没有Tomcat还不能够,他的做用就是监听8080;8005;8009端口。假如说,访问站点,须要一个webserver,而Tomcat就能够理解为webserver!Tomcat依赖于jdk
cd /usr/local/src
官网地址:http://tomcat.apache.org/ 进行下载,传到linux服务器上
tar zxvf apache-tomcat-8.5.41.tar.gz 解压
mv apache-tomcat-8.5.41 /usr/local/tomcat 移动并更名为tomcat
开启服务与关闭服务,不支持restart
/usr/local/tomcat/bin/startup.sh //启动服务
/usr/local/tomcat/bin/shutdown.sh //关闭服务
netstat -lntp |grep java 查看监听端口
三个端口释义:
8080为提供web服务的端口;
8005为管理端口;//显示调用会慢
8009端口为第三方服务调用的端口,好比httpd和Tomcat结合时会用到
systemctl stop firewalld 关闭防火墙
systemctl disable firewalld 移除
浏览器访问其默认主页:192.168.67.3:8080
4、配置Tomcat监听80端口
vim /usr/local/tomcat/conf/server.xml 把8080端口改成80端口
netstat -lntp |grep 80 此时80端口被nginx占用
/etc/init.d/nginx stop //关闭nginx服务,关闭后80端口没有出现,在从新关闭开启服务
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
此时再在浏览器测试8080,已经打不开网页,而用80就能够
5、配置Tomcat的虚拟主机
vim /usr/local/tomcat/conf/server.xml 增长虚拟主机,编辑server.xml,在</Host>下面增长以下内容
<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>
以上代码关键词释义:
name 定义域名;
appBase 定义应用的目录,Java的应用一般是一个war的压缩包,只须要将war的压缩包放到appBase目录下面便可,一般是须要把war包直接放到该目录下面,它会自动解压成一个程序目录
unpackWARs=”true” 是否自动解压;(也就是说,当咱们往站点目录里面直接上传一个war的包,它会自动解压)
docBase,这个参数用来定义网站的文件存放路径,若是不定义,默认是在appBase/ROOT下面,定义了docBase就以该目录为主了,其中appBase和docBase能够同样。在这一步操做过程当中,可能会遇到过访问404的问题,其实就是docBase没有定义对。
试验准备:
下载站点程序zrlog :https://www.zrlog.com/download
下载完成后使用xftp,传输到服务器上,下载下来的叫ROOT跟系统中的文件同名,解压会覆盖,更名成zrlog-release
appBase默认路径在 ls /usr/local/tomcat/webapps/
把此war包,复制一份到/usr/local/tomcat/webapps/下,在此目录下会自动解压
mv zrlog-release zrlog 为了防止再次自动解压被覆盖,更名为zrlog,用zrlog目录作测试
准备zrlog须要使用的数据库
create database zrlog; 建立数据库 grant all on zrlog.* to 'zrlog'@127.0.0.1 identified by 'tobe'; 建立zrlog用户和密码tobe mysql -uzrlog -ptobe -h127.0.0.1 使用新用户,及密码登陆,有zrlog数据库
在浏览器中输入:http://192.168.67.3/zrlog ,填写安装信息,把刚才建立的数据库信息填上,而后下一步继续添加,出现安装完成,点击“点击查看”
点击管理,进入后台操做,在后台写一篇文章,随时保存,点击发布,便可在主页查看新发布的内容
不让http://192.168.67.3/zrlog/显示最后的zrlog目录名
vim /usr/local/tomcat/conf/server.xml 编辑配置文件,查看域名为www.123.cn的虚拟主机
按虚拟主机配置文件,建立相应的网站目录 mkdir /data/wwwroot/123.cn
把zrlog目录下全部文件,移到新建立的网站目录123.cn下
mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
从新加载tomcat配置文件
/usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh netstat -lntp |grep 80
在windows的host文件下,配置www.123.cn,并在cmd下ping此域名
回到浏览器下,用域名www.123.cn访问,此时获得以下页面
网站的图标和一些重要信息都在/usr/local/tomcat/webapps/ROOT下
能够在浏览器中输入:192.168.67.3/tomcat-power.gif 访问
6、Tomcat日志
Tomcat日志目录位置/usr/local/tomcat/logs
日志目录下,各类日志的做用:
catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。
catalina.2019-xx-xx.log和catalina.out内容相同,前者会天天生成一个新的日志。
host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。
localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。
访问日志默认不会生成,须要在server.xml中配置
vim /usr/local/tomcat/conf/server.xml
生成的日志后缀,能够在下图处更改
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" //关键字logs prefix="localhost_access_log" suffix=".txt" //prefix定义访问日志的前缀名,suffix定义日志后缀名 pattern="%h %l %u %t "%r" %s %b" /> //pattern定义日志格式
给www.123.cn配置日志
从新加载tomcat配置文件
/usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/startup.sh
访问123.cn,便可生成日志
新增长的虚拟主机默认并不会生成相似默认虚拟主机的那个localhost.日期.log日志,错误日志会统一记录到catalina.out中。 关于Tomcat日志,你最须要关注catalina.out,当出现问题时,咱们应该第一想到去查看它。