笔记内容:
16.4 配置Tomcat监听80端口
16.5/16.6/16.7 配置Tomcat虚拟主机
16.8 Tomcat日志
笔记日期:
16.4 配置Tomcat监听80端口
Tomcat默认的监听端口是8080,在开发的过程中可以使用8080,但是如果上线的话,就需要把监听的端口改为80端口了。所以下面介绍一下如何配置Tomcat的监听端口为80:
编辑配置文件:
vim /usr/local/tomcat/conf/server.xml
修改成以下内容:
Connector port="80" protocol="HTTP/1.1"
修改后:
重启Tomcat服务(已经运行了这个服务,如果没有运行则直接启动即可):
/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
上图中这一部分内容就是用来配置虚拟主机的,其中
和 之间的配置为虚拟主机配置部分,name用来定义域名。
appBase则定义应用的目录也就是web工程所在的目录,Java的web应用通常是一个war的压缩包,你只需要将war的压缩包放到appBase目录下面即可。刚刚访问的Tomcat默认页其实就是在appBase目录下面,不过是在它的子目录ROOT里。
unpackWARs定义是否自动解压war压缩包,true为自动解压,false则反之。
autoDeploy定义是否自动部署web应用,同样的true为自动部署,false则反之。
和 标签之间是用于配置日志相关的信息。
以上大概介绍了哪一个标签用于配置虚拟主机和标签中属性的作用,下面我们自己定义一个虚拟主机,在配置文件中增加以下内容:
unpackWARs= "true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
以上配置中appBase定义为空,如果不定义appBase的路径,就需要使用
下面我们来搭建一个个人博客系统,来体会appBase和docBase目录的作用,这个系统使用的是zrlog:
1. 下载zrlog,这是一个博客系统程序,是使用Java语言开发的,并且是开源的,下载命令如下,下载到src目录下:
wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war
appBase默认定义的路径是支持自动解压war包的,所以把这个war包拷贝到appBase默认定义的路径下即可:
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:
安装向导实际上就是让我去配置数据库。
能够正常访问到这个页面后,我们就需要到Linux上的mysql中创建一个给zrlog用的数据库和一个给rlog用的mysql账户:
然后登录一下这个账户看看有没有问题:
登录没问题,而且也能看到zrlog就代表成功了。
接下来回到浏览器的安装向导页面中,把刚刚创建的数据库名称,和mysql的用户名、密码填上去:
下一步:
安装完成:
点击查看进入到的页面:
到此我们的博客就搭建完成了。
总结一下步骤:
下载zrlog的war包
拷贝到Tomcat的webapps目录下(自动解压)
更改解压后的目录名字为zrlog
在Windows上使用浏览器进入安装向导页面
在Linux上创建数据库和mysql用户
测试登录新创建的mysql用户
在安装向导页面中配置数据库信息,和配置博客系统后台的用户密码
点击查看,搭建完成
有没有发现,访问这个博客系统的时候还得加上/zrlog/这个路径,但是像其他博客网站都是直接访问域名就可以了,这是因为我们没有配置一个虚拟主机,虽然之前已经在server.xml中新增了一个虚拟主机,但是我们并没有去使用,所以下面就要介绍一下如何使用这个虚拟主机:
1.我们先查看一下server.xml文件中配置的虚拟主机信息:
vim /usr/local/tomcat/conf/server.xml
创建docBase所定义的目录:
mkdir /data/wwwroot/123.cn
将zrlog目录下的所有目录和文件都拷贝到新建的目录中:
mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
配置Windows上的hosts文件,把www.123.cn这个域名指向你Linux的IP地址,路径如下:
新增以下内容:
使用Windows中的cmd来ping一下这个域名是否指向了你的Linux中的IP地址:
可以看到指向了刚刚配置进去的IP地址,如图的结果就代表没问题。
因为使用了新的虚拟主机,所以需要重新启动Tomcat服务:
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
然后使用浏览器访问www.123.cn这个域名:
如图代表配置成功,从以上实验,我们不仅知道了如何增加虚拟主机,和了解了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
其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志,可以查看一下:
cd /usr/local/tomcat/logs/
less catalina.out
catalina.2017-xx-xx.log和catalina.out内容相同,只不过前者会每天生成一个新的日志:
less catalina.2017-11-07.log
可以从文件内容看到与catalina.out基本上是一样的。
host-manager.2017-xx-xx.log和manager.2017-xx-xx.log之类的为管理相关的日志,其中host-manager为虚拟主机的管理日志。
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默认配置的:
我们也可以给新增的虚拟主机配置一个:
END;---------------------------------------------------------------------
扩展
邱李的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/