官网下载地址:
http://www.oracle. com/echnetwork/java/javase/downloads/jdk8-downloads-
2133151.html
这个下载地址不能在Linux虚拟机里使用wget命令下载,只能先通过浏览器下载到本机上,然后再上传到Linux。本次下载的版本为jdk1.8,将虚拟机连接CRT,通过CRT上传JDK到/usr/local/src/目录下。
[root@bogon src]# ls apache-tomcat-8.5.61.tar.gz mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz jdk-8u271-linux-x64.tar.gz zrlog-1.7.1-baaecb9-release.war
部署Tomcat环境需要JDK软件环境,我们进入到/usr/local/src/目录下,解压刚刚上传的jdk-8u211-linux-x64.tar.gz,并将解压后的文件移动到/usr/local/目录下改名为jdk1.8。然后使用ls命令查看下/usr/local/目录下是否有jdk1.8目录。
[root@bogon src]#ls
[root@bogon src]#tar zxvf jdk-8u271-linux-x64.tar.gz
[root@bogon src]#mv jdk1.8.0_271/ /usr/local/jdk1.8
[root@bogon src]# ls /usr/local/ bin games jdk1.8 lib64 mysql share tomcat etc include lib libexec sbin src
设置环境变量,编辑/etc/profile文件,并使其立即生效。
[root@bogon src]# vi /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
[root@bogon src]# source /etc/profile
配置完成环境变量后,使用java -version命令检查是否安装成功,如果显示结果带有java version "1.8.0_211"字样和我们解压的jdk-8u211-linux-x64.tar.gz包的版本相对应,则证明安装成功。
[root@bogon src]# java -version java version "1.8.0_271" Java(TM) SE Runtime Environment (build 1.8.0_271-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
官网下载地址:http://tomcat.apache.org/
我们去官网下载合适的Tomcat版本,本案例已经下载好了,使用CRT上传到虚拟机/usr/local/src/目录下,然后解压,将解压后的文件移动到/usr/local目录下,并命名为tomcat
[root@bogon src]#tar zxvf apache-tomcat-8.5.61.tar.gz [root@bogon src]#mv apache-tomcat-8.5.61 /usr/local/tomcat
本次下载解压的包是二进制包,不用我们去编译,使用/usr/local/tomcat/bin/startup.sh这个命令启动Tomcat
[root@bogon src]# /usr/local/tomcat/bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk1.8 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.
用netstat命令来监听java相关服务端口,查看是否有以下端口存在(8009、8080、8005),如果存在则证明Tomcat服务启动成功。
[root@bogon src]#netstat -lnpt | grep java LISTEN 49228/java tcp6 0 0 :::8080 :::* LISTEN 49228/java tcp6 0 0 127.0.0.1:8005 :::* LISTEN 49228/java
三个端口8009、8005和8080的意义:
l 8080为提供Web服务的端口;
l 8005为管理端口;
l 8009端口为第三方服务调用的端口,比如httpd和Tomcat结合时会用到。
然后打开浏览器,在地址栏中输入http://IP:8080/(这里的IP为你虚拟机的IP地址,此处IP为192.168.100.4:8080),可以看到Tomcat的默认页面。
Tomcat 监听的是8080端口,如果想要直接访问,不加8080端口(默认输入一个IP或者域名,访问80端口时是可以省略IP后端口号的)就需要配置Tomcat监听80端口,Tomcat是支持端口自定义的。
编辑Tomcat配置文件server.xml
[root@bogon tomcat]# vi conf/server.xml .... <Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> ...
//将这里的8080直接改成80
修改完配置文件,接下来就是重启Tomcat服务,Tomcat服务是不支持restart的方式重启服务的,所以要想重启服务必须先关闭服务,使用命令/usr/local/tomcat/bin/shutdown.sh,然后再启动服务,使用命令/usr/local/tomcat/bin/startup.sh
[root@bogon tomcat]# ./bin/shutdown.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk1.8 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: [root@bogon tomcat]# ./bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk1.8 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.
重启服务之后,我们用netstat命令监听Java相关服务端口来查看是否启动成功
[root@bogon tomcat]# netstat -plnt | grep java tcp6 0 0 :::80 :::* LISTEN 18774/java tcp6 0 0 127.0.0.1:50101 :::* LISTEN 18792/java tcp6 0 0 127.0.0.1:8005 :::* LISTEN 18774/java tcp6 0 0 127.0.0.1:40101 :::* LISTEN 18792/java tcp6 0 0 127.0.0.1:20101 :::* LISTEN 18792/java
如果启动成功,则会出现三个端口(8009、8005、80)。
配置文件修改完成,并Tomcat服务启动成功后,打开浏览器在地址栏中输入http://192. 168.100.4/(注意你的IP),这时又会看见Tomcat默认页面。
Tomcat和Apache、Nginx一样,都支持虚拟主机配置。每个虚拟主机配置文件就是一台服务器,支持一个IP下可以访问多个域名,每个域名代表一个网站。所以一台服务器上可以配置多个网站。
编辑Tomcat配置文件,直接在配置文件内搜索Host,找到如下内容:
[root@bogon tomcat]# vi conf/server.xml ...... <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host> ....
其中<Host>和</Host>之间的配置为虚拟主机配置部分:
l name定义域名;
l appBase定义应用的目录;
l unpackWARs为是否自动解压war包;
l autoDeploy 如果此项设置为true,表示Tomcat服务处于运行状态,能够检测appbase下的文件,如果有新的Web应用加入进来,会自动发布这个Web应用。
Java的应用通常是一个JAR的压缩包,你只需要将JAR的压缩包放到appBase目录下面即可。刚刚我访问的Tomcat默认页其实就是在appBase目录下面,不过是在它子目录ROOT里。
新增虚拟主机,编辑server.xml在</Host>下面增加以下内容:
[root@bogon tomcat]# vi conf/server.xml ..... <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>
docBase这个参数用来定义网站的文件存放路径。如果不定义,默认是在appBase/ROOT下面。定义了docBase就以该目录为主了,其中appBase和docBase可以一样。在这一步操作过程中很多人会遇到过访问404的问题,其实就是docBase没有定义对。
appBase为应用存放目录(实际上是一个相对路径,相对于 /usr/local/tomcat/ 路径),通常是需要把war包直接放到该目录下面,它会自动解压成一个程序目录。
搭建了一个Tomcat,想要使用Tomcat去跑一个网站。首先应用不能是一个传统所谓的目录(Apache、Nginx访问网站,首先需要指定一个目录,目录里存放着PHP文件或者是Html的文件,然后去访问),Tomcat需要提供一个war的包,就是一个压缩包,这个压缩包里面包含着运行这个网站的一些文件,包括配置,js代码,数据库相关的等等,都需要打包成war这种文件,而这个文件需要放置到 webapps 里面。
下面我们通过部署个Java的应用来体会appBase和docBase目录的区别。
为了方便测试,下载一个zrlog(Java写的blog站点应用,轻量),zrlog实际就是一个war包。
(下载地址:http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war)
先暂时将zrlog的war包下载到/usr/local/src目录下
[root@bogon src]# ls apache-tomcat-8.5.61.tar.gz mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz jdk-8u271-linux-x64.tar.gz temp log zrlog-1.7.1-baaecb9-release.war
appBase支持自动解压,所以直接将war包拷贝到/usr/local/tomcat/webapps/目录下:
[root@bogon src]#cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/ [root@bogon src]# ls /usr/local/tomcat/webapps/ docs examples host-manager manager ROOT zrlog-1.7.1-baaecb9-release.war zrlog-1.7.1-baaecb9-release
// 将war包拷贝到/usr/local/tomcat/webapps/目录下之后,包会自动解压。(前提是tomcat正常启动。
重命名war包的文件名,命令如下:
[root@bogon src]# cd /usr/local/tomcat/webapps/ [root@bogon webapps]# mv zrlog-1.7.1-baaecb9-release zrlog [root@bogon webapps]# ls docs examples host-manager manager ROOT zrlog zrlog-1.7.1-baaecb9-release.war
[root@bogon webapps]# ls
docs host-manager ROOT zrlog-1.7.1-baaecb9-release
examples manager zrlog zrlog-1.7.1-baaecb9-release.war
// 一但重命名或删除war包解压后的包的文件时,war包就会在解压出一个文件夹。
用浏览器访问http://192. 168.100.4/zrlog(注意你的IP),如图所示:
出现安装向导,这是一个配置数据库的过程。
之前这个机器安装LNMP,在这里就不再演示MySQL的安装方式,直接调用。登入数据库,在数据库中创建一个zrlog数据库和zrlog用户。
[root@bogon webapps]# mysql -uroot -paminglinux Warning: Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1669 Server version: 5.6.40 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement. mysql>create database zrlog; Query OK, 1 row affected (0.00 sec) mysql> grant all on zrlog.* to ‘zrlog‘@127.0.0.1 identified by ‘123456‘; Query OK, 0 rows affected (0.05 sec) mysql>exit Byebye
检查创建用户是否可以登陆数据库,使用zrlog用户登录
[root@bogon webapps]# /usr/local/mysql/bin/mysql -u zrlog -h 127.0.0.1 -p123456 Warning: Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1745 Server version: 5.6.40 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | test | | zrlog | +--------------------+ 3 rows in set (0.00 sec) mysql> exit Bye
检查完成,zrlog用户登录成功。使用 zrlog用户信息填写刚才在浏览器中打开的网页,Email填写自己的邮箱,本次是实验,填写内容为自定义邮箱(tomcat@163.com),单击“下一步”按钮,如图所示
设置管理员账号(admin)和管理员密码(123456),网站标题和子标题按需填写,本次自定义内容(网站标题:“测试”,网站子标题:“linux”),如图所示:
填写完成后,单击“下一步”按钮,可以看到安装完成的界面。如图所示
单击“点击查看”按钮,我们就可以进入搭建好的zrlog页面了。
我们也可以进入管理页面,写一些文章,单击上图主菜单栏中的“管理”按钮,跳转如图所示
输入安装向导里已经设置好的账户名和密码(admin:123456),单击“登录”按钮,登录成功页面
单击“文章撰写”栏目,写上自己想写的内容,然后保存
然后回到主页面,你就可以看到刚才你写的内容
我们在浏览器访问zrlog需要指定IP地址加目录,那么如何才能输入IP直接访问该目录呢?
查看虚拟主机docBase的路径
[root@bogon tomcat]#vi conf/server.xml
... <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> //docBase 定义的目录为:/data/wwwroot/123.cn
创建docBase目录
[root@bogon tomcat]#mkdir -p /data/wwwroot/123.cn/
将/usr/local/tomcat/webapps/zrlog 中的所有文件移动到/data/wwwroot/123.cn/目录下
[root@bogon webapps]#mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
接下来在Windows下绑定hosts文件
hosts文件路径:C:\Windows\System32\drivers\etc 在文件下面添加 192.168.100.4 www.123.cn
测试
打开命令提示符(CMD),用ping命令ping www.123.cn 看IP是否为虚拟机IP,如果是的话,现在就可以访问了。结果如下图所示
接下来就用域名去访问zrlog页面,由于之前配置完虚拟主机后,并没有重启服务,这里要重启一下服务
[root@bogon tomcat]# ./bin/shutdown.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk1.8 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: [root@bogon tomcat]# ./bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk1.8 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.
重启Tomcat服务完成后,打开浏览器在地址栏输入www.123.cn,就可以看到zrlog的首页
这个页面跟之前用指定IP加目录访问的页面是一模一样的。
Tomcat在应用过程中,难免会出现错误,如何去查看这些错误,这就需要查看Tomcat的日志。Tomcat日志存放在/usr/local/tomcat/logs/目录下。
[root@bogon tomcat]# ls /usr/local/tomcat/logs/ localhost.2021-03-24.log catalina.2021-03-24.log localhost_access_log.2021-03-24.txt catalina.out manager.2021-03-24.log host-manager.2021-03-24.log
l catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。
l catalina.2020-xx-xx.log和catalina.out内容相同,前者会每天生成一个新的日志。
l host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。
l localhost和localhost-access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。
由于日志默认不会生成,需要在server.xml中配置一下。所以接下来配置新增虚拟主机的访问日志,具体方法是在对应虚拟主机的<Host></Host>里面加入下面的配置(我们用www.123.cn来进行配置),编辑以下配置文件server.xml
[root@bogon tomcat]# vi conf/server.xml ...... <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"/> <Valve className="org.apache.catalina.valves.AccessLogValve." directory="logs" prefix="123.cn_access" suffix=".log" pattern="%h %l %u %t "%r"%s %b"/> </Host> ......
l valve为日志文件配置;
l prefix定义访问日志的前缀;
l suffix定义日志的后缀;
l pattern定义日志格式。
注意:新增加的虚拟主机默认并不会生成类似默认虚拟主机的那个localhost.日期.log日志,错误日志会统一记录到catalina.out中。关于Tomcat日志,你最需要关注catalina.out,当出现问题时,我们应该第一想到去查看它。
配置完成后,重启Tomcat服务,命令如下:
[root@bogon tomcat]# ./bin/shutdown.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk1.8 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: [root@bogon tomcat]# ./bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/jdk1.8 Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.
重启Tomcat服务完成后,访问网站,查看/usr/local/tomcat/logs目录下是否有日志生成,并且查看生成的日志信息
[root@bogon tomcat]# ls /usr/local/tomcat/logs/ 123.cn_access_log.2021-03-24.txt localhost.2021-03-24.log catalina.2021-03-24.log localhost_access_log.2021-03-24.txt catalina.out manager.2021-03-24.log host-manager.2021-03-24.log zrlog [root@bogon tomcat]# cat logs/123.cn_access_log.2021-03-24.txt 192.168.100.2 - - [24/Mar/2021:15:44:42 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:15:44:42 -0400] "GET //favicon.ico HTTP/1.1" 200 9662 192.168.100.2 - - [24/Mar/2021:15:44:43 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:15:44:43 -0400] "GET //favicon.ico HTTP/1.1" 200 9662 192.168.100.2 - - [24/Mar/2021:15:44:45 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:15:44:45 -0400] "GET //favicon.ico HTTP/1.1" 200 9662 192.168.100.2 - - [24/Mar/2021:16:37:10 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /admin/login HTTP/1.1" 200 2405 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/css/custom.min.css?t=1492623618000 HTTP/1.1" 200 85781 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/js/jquery.min.js?t=1491768478000 HTTP/1.1" 200 85578 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/css/bootstrap.min.css?t=1491768478000 HTTP/1.1" 200 143534 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/js/pnotify.js?t=1491768478000 HTTP/1.1" 200 13359 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /admin/js/login.js?t=1491768478000 HTTP/1.1" 200 1831 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/css/pnotify.css?t=1491768478000 HTTP/1.1" 200 1986 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/css/font-awesome.min.css?t=1491768478000 HTTP/1.1" 200 29063 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/fonts/fontawesome-webfont.woff2?v=4.6.3 HTTP/1.1" 200 129992 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/fonts/fontawesome-webfont.woff?v=4.6.3 HTTP/1.1" 200 163414 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /assets/fonts/fontawesome-webfont.ttf?v=4.6.3 HTTP/1.1" 200 152796 192.168.100.2 - - [24/Mar/2021:16:38:51 -0400] "GET /favicon.ico?t=1491768478000 HTTP/1.1" 200 9662 192.168.100.2 - - [24/Mar/2021:16:39:39 -0400] "POST /api/admin/login HTTP/1.1" 200 37 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/css/select2.min.css?t=1491768478000 HTTP/1.1" 200 15196 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/css/switchery.min.css?t=1491768478000 HTTP/1.1" 200 682 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /admin/js/dashboard.js?t=1491768478000 HTTP/1.1" 200 642 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/css/nprogress.css?t=1491768478000 HTTP/1.1" 200 1458 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/images/default-portrait.gif HTTP/1.1" 200 2926 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /admin/index HTTP/1.1" 200 19011 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/js/switchery.min.js?t=1491768478000 HTTP/1.1" 200 24437 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/js/nprogress.js?t=1491768478000 HTTP/1.1" 200 11565 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/js/custom.min.js?t=1491768478000 HTTP/1.1" 200 4388 192.168.100.2 - - [24/Mar/2021:16:39:40 -0400] "GET /assets/js/bootstrap.min.js?t=1491768478000 HTTP/1.1" 200 36868 192.168.100.2 - - [24/Mar/2021:16:40:43 -0400] "POST /api/admin/website/update HTTP/1.1" 200 21 192.168.100.2 - - [24/Mar/2021:16:40:44 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:16:54:34 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:16:54:34 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:16:54:34 -0400] "GET / HTTP/1.1" 200 8599 192.168.100.2 - - [24/Mar/2021:16:54:34 -0400] "GET //favicon.ico HTTP/1.1" 200 9662
至此,Tomcat搭建配置完成。
原文:https://www.cnblogs.com/jinyang123/p/14578058.html