专栏首页程序猿的大杂烩配置Tomcat监听80端口,配置Tomcat虚拟主机,使用zrlog搭建个人博客,Tomcat日志

配置Tomcat监听80端口,配置Tomcat虚拟主机,使用zrlog搭建个人博客,Tomcat日志

笔记内容:

  • 16.4 配置Tomcat监听80端口
  • 16.5/16.6/16.7 配置Tomcat虚拟主机
  • 16.8 Tomcat日志

笔记日期:

16.4 配置Tomcat监听80端口

Tomcat默认的监听端口是8080,在开发的过程中可以使用8080,但是如果上线的话,就需要把监听的端口改为80端口了。所以下面介绍一下如何配置Tomcat的监听端口为80:

  1. 编辑配置文件:

vim /usr/local/tomcat/conf/server.xml

  1. 修改成以下内容:

Connector port="80" protocol="HTTP/1.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

上图中这一部分内容就是用来配置虚拟主机的,其中<Host>和</Host>之间的配置为虚拟主机配置部分,name用来定义域名。

appBase则定义应用的目录也就是web工程所在的目录,Java的web应用通常是一个war的压缩包,你只需要将war的压缩包放到appBase目录下面即可。刚刚访问的Tomcat默认页其实就是在appBase目录下面,不过是在它的子目录ROOT里。

unpackWARs定义是否自动解压war压缩包,true为自动解压,false则反之。

autoDeploy定义是否自动部署web应用,同样的true为自动部署,false则反之。

<Valve>和</Valve>标签之间是用于配置日志相关的信息。

  1. 以上大概介绍了哪一个标签用于配置虚拟主机和标签中属性的作用,下面我们自己定义一个虚拟主机,在配置文件中增加以下内容:

<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

  1. appBase默认定义的路径是支持自动解压war包的,所以把这个war包拷贝到appBase默认定义的路径下即可:

cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps

  1. 更改一下目录的名称:

cd /usr/local/tomcat/webapps

mv zrlog-1.7.1-baaecb9-release zrlog

  1. 使用浏览器访问zrlog,然后会将进入安装向导页面,我们需要安装这个zrlog:

安装向导实际上就是让我去配置数据库。

  1. 能够正常访问到这个页面后,我们就需要到Linux上的mysql中创建一个给zrlog用的数据库和一个给rlog用的mysql账户:
  1. 然后登录一下这个账户看看有没有问题:

登录没问题,而且也能看到zrlog就代表成功了。

  1. 接下来回到浏览器的安装向导页面中,把刚刚创建的数据库名称,和mysql的用户名、密码填上去:

下一步:

安装完成:

点击查看进入到的页面:

到此我们的博客就搭建完成了。

总结一下步骤:

  1. 下载zrlog的war包
  2. 拷贝到Tomcat的webapps目录下(自动解压)
  3. 更改解压后的目录名字为zrlog
  4. 在Windows上使用浏览器进入安装向导页面
  5. 在Linux上创建数据库和mysql用户
  6. 测试登录新创建的mysql用户
  7. 在安装向导页面中配置数据库信息,和配置博客系统后台的用户密码
  8. 点击查看,搭建完成

有没有发现,访问这个博客系统的时候还得加上/zrlog/这个路径,但是像其他博客网站都是直接访问域名就可以了,这是因为我们没有配置一个虚拟主机,虽然之前已经在server.xml中新增了一个虚拟主机,但是我们并没有去使用,所以下面就要介绍一下如何使用这个虚拟主机:

1.我们先查看一下server.xml文件中配置的虚拟主机信息:

vim /usr/local/tomcat/conf/server.xml

  1. 创建docBase所定义的目录:

mkdir /data/wwwroot/123.cn

  1. 将zrlog目录下的所有目录和文件都拷贝到新建的目录中:

mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/

  1. 配置Windows上的hosts文件,把www.123.cn这个域名指向你Linux的IP地址,路径如下:

新增以下内容:

  1. 使用Windows中的cmd来ping一下这个域名是否指向了你的Linux中的IP地址:

可以看到指向了刚刚配置进去的IP地址,如图的结果就代表没问题。

  1. 因为使用了新的虚拟主机,所以需要重新启动Tomcat服务:

/usr/local/tomcat/bin/shutdown.sh

/usr/local/tomcat/bin/startup.sh

  1. 然后使用浏览器访问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

  1. 其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志,可以查看一下:

cd /usr/local/tomcat/logs/

less catalina.out

  1. catalina.2017-xx-xx.log和catalina.out内容相同,只不过前者会每天生成一个新的日志:

less catalina.2017-11-07.log

可以从文件内容看到与catalina.out基本上是一样的。

  1. 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默认配置的:

我们也可以给新增的虚拟主机配置一个:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Tomcat性能监控与调优

    Tomcat是目前被应用得最多的一款Java Web服务器,很多人都会使用Tomcat来作为项目的服务器。也经常需要在开发的时候对Tomcat进行debug。在...

    端碗吹水
  • 配置Tomcat和在Eclipse中创建Web工程

    在Tomcat的安装目录下有一个conf目录,里面存放着Tomcat服务器的配置文件,其中最为核心的配置文件是server.xml,在这个文件里我们可以配置服务...

    端碗吹水
  • Docker安装Graylog

    Graylog是一个开源且完整的日志聚合、管理工具,提到日志管理想必大家都会想到ELK平台,Graylog功能和ELK类似,但又比ELK要易用,相对的日志分析能...

    端碗吹水
  • LoadRunner 实现监控Tomcat

    LoadRunenr没有监控Tomcat的专用监控器,为了用lr达到监控tomcat的目的可以通过打开Tomcat自带的Status页面之后,利用lr的关联技术...

    流柯
  • SAS-RTF合并之告别空白页

    日前,小编亲眼目睹了RTF合并删空白页的痛苦,数百页的文档穿插着无数无规律的空白页,删一页电脑卡半分钟。既然用了小编写的宏程序,又让小编亲眼目睹了删空白页的痛苦...

    Setup
  • 某次压测时物理内存被用光 Tomcat 被 Kernel kill 掉的案例

    ? 背景描述 某项目结构图如下(前端交互式体验及对象存储为主,Redis 及 rds 负载较小没有画出): ? web1 和 web2 是两个 Apache,...

    小小科
  • kakafka - 为CQRS而生

    前段时间跟一个朋友聊起kafka,flint,spark这些是不是某种分布式运算框架。我自认为的分布式运算框架最基础条件是能够把多个集群节点当作一个完整的系统...

    用户1150956
  • 20.java-JDBC连接mysql数据库详解

    jdbc(java database connectivity)为java开发者使用数据库提供了统一的编程接口,它由一组java类和接口组成。

    张诺谦
  • 利用WinRM实现内网无文件攻击反弹shell

    WinRM是WindowsRemoteManagementd(win远程管理)的简称。基于Web服务管理(WS-Management)标准,使用80端口或者44...

    洛米唯熊
  • 谷歌最新数据中心落地,25亿投资美国东南部,势与苹果争夺农村地区

    新智元报道 来源:Engadget、CNBC 编辑:艾霄葆 【新智元导读】近日,谷歌CEO Sundar Pichai公布了第15个数据中心所在的位置,...

    新智元

扫码关注云+社区

领取腾讯云代金券