笔记内容:
笔记日期:
16.4 配置Tomcat监听80端口
Tomcat默认的监听端口是8080,在开发的过程中可以使用8080,但是如果上线的话,就需要把监听的端口改为80端口了。所以下面介绍一下如何配置Tomcat的监听端口为80:
vim /usr/local/tomcat/conf/server.xml
Connector port="80" protocol="HTTP/1.1"
修改后:
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
检查一下是否有监听80端口:
netstat -lntp |grep java
这时候再使用浏览器访问,就不需要写上端口了(记得事先关闭Linux的防火墙和清除防火墙规则):
如果加载得很慢,可能是因为Tomcat的8005端口启动的比较慢。
16.5/16.6/16.7 配置Tomcat虚拟主机
不管是httpd、Nginx还是Tomcat都是web服务器,所以同样的Tomcat也可以配置虚拟主机。所以这一部分是介绍如何配置Tomcat的虚拟主机:
1. Tomcat在server.xml文件中配置虚拟主机:
vim /usr/local/tomcat/conf/server.xml
上图中这一部分内容就是用来配置虚拟主机的,其中<Host>和</Host>之间的配置为虚拟主机配置部分,name用来定义域名。
appBase则定义应用的目录也就是web工程所在的目录,Java的web应用通常是一个war的压缩包,你只需要将war的压缩包放到appBase目录下面即可。刚刚访问的Tomcat默认页其实就是在appBase目录下面,不过是在它的子目录ROOT里。
unpackWARs定义是否自动解压war压缩包,true为自动解压,false则反之。
autoDeploy定义是否自动部署web应用,同样的true为自动部署,false则反之。
<Valve>和</Valve>标签之间是用于配置日志相关的信息。
<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>
以上配置中appBase定义为空,如果不定义appBase的路径,就需要使用<Context>标签定义一个docBase,docBase定义的目录下需要存放着网站的文件,也就是web应用。使用docBase是定义了一个外部的目录,所以一般称为外部工程发布。所以就是二选一,可以使用appBase定义内部的路径,也可以使用docBase定义的外部路径。
下面我们来搭建一个个人博客系统,来体会appBase和docBase目录的作用,这个系统使用的是zrlog:
1. 下载zrlog,这是一个博客系统程序,是使用Java语言开发的,并且是开源的,下载命令如下,下载到src目录下:
wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps
cd /usr/local/tomcat/webapps
mv zrlog-1.7.1-baaecb9-release zrlog
安装向导实际上就是让我去配置数据库。
登录没问题,而且也能看到zrlog就代表成功了。
下一步:
安装完成:
点击查看进入到的页面:
到此我们的博客就搭建完成了。
总结一下步骤:
有没有发现,访问这个博客系统的时候还得加上/zrlog/这个路径,但是像其他博客网站都是直接访问域名就可以了,这是因为我们没有配置一个虚拟主机,虽然之前已经在server.xml中新增了一个虚拟主机,但是我们并没有去使用,所以下面就要介绍一下如何使用这个虚拟主机:
1.我们先查看一下server.xml文件中配置的虚拟主机信息:
vim /usr/local/tomcat/conf/server.xml
mkdir /data/wwwroot/123.cn
mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
新增以下内容:
可以看到指向了刚刚配置进去的IP地址,如图的结果就代表没问题。
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
如图代表配置成功,从以上实验,我们不仅知道了如何增加虚拟主机,和了解了appBase与docBase的区别,还学会了两种搭建zrlog博客系统的方式。
提示:war包其实就是一个zip格式的压缩包,所以我们可以使用upzip这个命令来解压缩这个war包,命令示例:
unzip zrlog-1.7.1-baaecb9-release.war -d ./zrlog
运行结果:
16.8 Tomcat日志
日志是个很重要的东西,通过日志我们能够有依据地去分析一些问题的原因和预防错误的发生,所以最后要介绍的就是Tomcat的日志:
Tomcat的日志都存放在logs目录下:
ls /usr/local/tomcat/logs
cd /usr/local/tomcat/logs/
less catalina.out
less catalina.2017-11-07.log
可以从文件内容看到与catalina.out基本上是一样的。
4. localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。
示例:less localhost.2017-11-07.log
示例:less localhost_access_log.2017-11-07.txt
访问日志默认不会生成,需要在server.xml中配置一下:
vim /usr/local/tomcat/conf/server.xml
这是Tomcat默认配置的:
我们也可以给新增的虚拟主机配置一个: