笔记总结自网易JavaWeb课程
日志
Tomcat的日志记录了服务器的运行情况,包括服务器本身以及我们设计的web程序,对于服务器端来说,问题只有在进行数据访问时才会体现出来,运行错误只能通过日志去查看错误信息,并进行调试。
日志分类
按照功能范围的不同,将Tomcat日志分为三种不同的类型:
系统运行日志
记录服务器运行的信息与状态
访问日志
记录服务器处理的所有的请求
应用日志
web应用程序的日志(servlet)
访问日志的配置
访问日志的配置位置依然在server.xml文件里,其信息如下图。
属性操作
其中,directory属性记录的是日志的存放路径,如果是相对路径,则是相对于Tomcat安装的根目录来查找。
prefix和suffix是日志的前缀和后缀。
pattern决定了日志的记录格式,这里所有的信息都有其特性的含义,比如%r是请求的首行信息,%s是HTTP状态码,%t是请求时间,%m是用户的请求方法,%a是客户端ip地址,%b是服务器端发送的字节数,也可以获取HTTP协议首部描述,如%{User-Agent}i即获取userAgent信息。我们可以在pattern里任意添加字符串,只要能够正确区分出各式和字符串就可以了。
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="method: %m, clientIP: %a, time: %t, "%r", statusCode: %s, byteSent: %b, User-Agent: %{User-Agent}i" />
我们也可以对日志的日期等信息进行格式化,比如
fileDateFormat="yyyy-MM-dd.HH."
rotatable="true"//日志切分,依据时戳进行日志切分(当时戳数据发生变化时,进行切割)
模拟一次请求,查看我们的修改是否生效
curl 127.0.0.1:8080
之后进入Tomcat logs文件夹中,找到对应的文件名
使用命令行查看
cat filename
更多信息
想要知道Tomcat在配置时可以使用的更多功能,可以直接访问Tomcat的官方文档。
http://127.0.0.1:8080/docs/config/valve.html
Tomcat部署web应用
为了方便开发人员的共享,我们一般将web应用打包成war包,这样在使用时,也会方便很多,想要手动打包,我们需要遵循以下步骤:
将写好的webapp应用放在对应的位置,然后通过Terminal进入文件所在位置,使用
jar cvf Filename.war .//最后一个.表示当前目录下所有文件
mv filename ..//移动文件到上一层
rm -rf filename//删除文件夹
之后,就会产生一个.war文件,接下来只需将这个文件移动到webapp文件里,就可以访问了。
注意
我们在访问页面时,可能会出现404 Not Found页面,这并不是我们服务器开启失败或者webapp逻辑有误,出现4**的状态码指的是客户端错误,即URL输入错误,找不到指定资源。