6月27日任务

程名称:16.4 配置Tomcat监听80端口

笔记内容:

8a6f872c88dca2b100880f6edf61f1b14ee.jpg

自定义端口

编辑配置文件

[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml

385b6fd24e23d8ce887ad24cbfcc302d88f.jpg

此处控制8080端口

3ccf0f9500a0e544744fe4643b2f4de7793.jpg

更改为80端口

690550ec4c7b887b0250d557f814f123a13.jpg

重启服务

[root@localhost ~]# /usr/local/tomcat/bin/shutdown.sh

[root@localhost ~]# /usr/local/tomcat/bin/startup.sh

b550f5455e1dd176df58a8c84dea7f717d3.jpg

查看进程是否开启,监听端口是否更改

622a3d04c681bf837785fb5860dc81ea15f.jpg

1380f36193f5ad9c1df373039e90a31f880.jpg

程名称:配置Tomcat的虚拟主机(上)(中)(下)

笔记内容:

虚拟主机:一台服务器上或者一个websever可以支持一个IP下面可以访问多个域名,每一个域名代表着一个网站,可以配置多个网站,每个网站的配置文件都是一个虚拟主机

第一步配置主配置文件

[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml

查看这部分就表示虚拟注主机定义:

其中<Host>和</Host>之间的配置为虚拟主机配置部分,name定义域名,

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

docBase,这个参数用来定义网站的文件存放路径,如果不定义,默认是在appBase/ROOT下面,定义了docBase就以该目录为主了,其中appBase和docBase可以一样。在这一步操作过程中很多同学遇到过访问404的问题,其实就是docBase没有定义对。

 appBase为应用存放目录,通常是需要把war包直接放到该目录下面,它会自动解压成一个程序目录

注:appBase默认路径:[root@localhost ~]# ls /usr/local/tomcat/webapps/

d920c30524155b27b9889ed09bcdb0de4a2.jpg

(虚拟主机编辑开始)<Host name="localhost"(域名)  appBase="webapps"(其实appBase是指定的一个目录,应用项目在哪里,搭建了一个Tomcat,要想去跑一个网站,网站放在哪里,不能是一个传统目录,Apache/Nginx需要指定一个目录DocumentRoot和Root,目录中存放着PHP的文件、Html文件,然后可以访问;而Tomcat需要提供war的包(压缩文件),文件中包含着运行网站的一些文件,包括配置、JSP代码、和数据库相关、图片、静态,war打包文件需要放在webapps里面,这里是appBase定义;也可以单独指定一个目录,目录中存放着JSP文件,但是不是一个war包,需要docBase定义;webapps是个目录,她是个相对路径与server.xml这个配置文件

            unpackWARs="true"(是否自动解压WAR包,WAR包放在webapps里面会自动解压) autoDeploy="true">(autoDeploy 如果此项设为true,表示Tomcat服务处于运行状态时,能够监测appBase下的文件,如果有新有web应用加入进来,会自运发布这个WEB应用)

 

        <!-- 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 name="www.123.cn"(域名)   appBase=""(可以不定义,但是需要定义docBase,其实appBase也是定义一个目录)

       unpackWARs= "true"   autoDeploy="true"

        xmlValidation="false" xmlNamespaceAware="false">

       <Context path=""(context标签是用来指定自定义的网站的url,以及映射实际的在系统的物理路径。例如:<Context path="/abc"  docBase="/www/a.war"  reloadable="true" />时,我们访问www.xxx.com/abc代替www.xxx.com/a) docBase="/data/wwwroot/123.cn/"(如果不定义 appBase,不想让WAR包存在,可以定义一个目录,目录中放网站程序,目录里相当于WAR包解压完存放的文件) debug="0" reloadable="true"(这个属性非常重要,如果为true,则tomcat会自动检测应用程序的/WEB-INF/lib 和/WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重起tomcat的情况下改变应用程序) crossContext="true"/>

  </Host>

内容重写:

 </Host>

     <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和docBase都是指定虚拟主机的目录,appBase是存放war包(压缩文件),war包包含了运行网站的一些文件,包括配置、JSP代码、和数据库相关、图片、静态,如果定义appBase就不需要定义docBase,但是需要 unpackWARs= "true" (自动解压)  autoDeploy="true"(自动发布);如果不定义appBase则需要增加docBase,目录中放网站程序,目录里相当于WAR包解压完存放的文件;两者二选一,如果同时存在,可以在配置文件中写空,如:appBase="",防止相互干扰,如果出现404状态码有可能就是这两者没有定义对

 

测试部署一个java的应用

PHP发布博客可以使用workpress

JAVA发布博客可以使用ZrLog

1.首先[root@localhost ~]# cd /usr/local/src/

2.官网下载地址:http://dl.zrlog.com/release/

下载(官网会自动选择最新版本下载)

[root@localhost src]# wget http://dl.zrlog.com/release/zrlog.war

官网下载地址:

http://dl.zrlog.com/release/

官网安装过程:https://blog.zrlog.com/post/how-to-install-zrlog

1eebce2ff9da4e178bc56fc7a8f2c7ecf6e.jpg

3.war包.拷贝至appBase目录下

appBase目录下会自动解压war包

注:appBase默认路径:[root@localhost ~]# ls /usr/local/tomcat/webapps/

327491a524346f687c6c200606894caf899.jpg

拷贝:[root@localhost ~]# cp /usr/local/src/zrlog.war /usr/local/tomcat/webapps/

9f2399528019336e0499796562cd50a8e6d.jpg

已经自动解压

11e9fe0f1d146ae76357a67b97b2fd076ed.jpg

4.安装博客

浏览器访问http://183.131.3.206/zrlog/

0783e08447c3bed932d463e3eb45c4b738a.jpg

首先检查mysql 服务是否启动

ef8ea5541ddf9bb009ce56ee3b7627dfe75.jpg

进入数据库创建zrlog库

[root@localhost ~]# /usr/local/mysql5.6/bin/mysql -uroot -p'ys@2018'

mysql> create database zrlog;

3282de6cb8b6281c89ce50fd21907426f50.jpg

创建用户可以管理登陆zrlog库

mysql> grant all on zrlog.* to 'zjsw205'@127.0.0.1 identified by 'zjsw205';

8dfe99288cc8c097f9c58c9379262949583.jpg

3859c62e011fa85a78c591ab017bdd7e7c9.jpg

8646999295e419e835233b44c174deba668.jpg

04567fd7aeb15417191783f974e45db95c1.jpg

需求直接域名访问(使用新建的虚拟主机域名):

a368c0a7d5ef6f2346334a0169016701821.jpg

[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml

4c7ed708b608a258a93f5dc05c516b81ab5.jpg

创建网站目录

[root@localhost ~]# mkdir /data/wwwroot/123.cn/

zrlog所有文件移到docBase目录下

[root@localhost ~]# mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/

c3c9164276bf6b78ef899f820e10f680d7b.jpg

访问页面错误

094fbd6924a2194fee61e0313e773c9a1b8.jpg

排错:

因为服务没有重启

[root@localhost ~]# /usr/local/tomcat/bin/shutdown.sh

[root@localhost ~]# /usr/local/tomcat/bin/startup.sh

a3cbc0dc01df488d0e19a3c75ee3ae36f54.jpg

多了几个端口是因为搞了几个网站、应用

2ce303def28d0d4eab8cbf175bd4780e1b1.jpg

正常访问

63d7b3c349bac800f854069618af116d1eb.jpg

Webapps默认访问的是ROOT目录

f98675e336c41e09e23e4d0c03d38595f81.jpg

Index.jsp就是默认访问首页

a8bc8752b59d6d5435fc7e575582f86cd2d.jpg

822392f679fcaa7011dd0b863d18791f4dc.jpg

自定义的appBase目录要想访问里面的东西如图片也需要ROOT目录,自定义的图片、静态文件、jsp文件等放到ROOT目录下,才能正常访问

程名称:16.8 Tomcat日志

笔记内容:

Tomcat日志位置:[root@localhost ~]# ls /usr/local/tomcat/logs/

四类日志:

其中catalina开头的日志为Tomcat的综合日志,它记录Tomcat服务相关信息,也会记录错误日志。其中catalina.2017-xx-xx.log和catalina.out(重要日志)内容相同,前者会每天生成一个新的日志。

host-manager和manager为管理相关的日志,其中host-manager为虚拟主机的管理日志。

localhost和localhost_access为虚拟主机相关日志,其中带access字样的日志为访问日志,不带access字样的为默认虚拟主机的错误日志。

访问日志默认不会生成,需要在server.xml中配置一下。

[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml

directory=相对路径

prefix=日志前置  suffix=日志后缀

配置新增虚拟主机访问日志

Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

         prefix="123.cn_access" suffix=".log"

         pattern="%h %l %u %t "%r" %s %b" />

 

配置完后重启服务

[root@localhost ~]# /usr/local/tomcat/bin/shutdown.sh

[root@localhost ~]# /usr/local/tomcat/bin/startup.sh

注:prefix定义访问日志的前缀,suffix定义日志的后缀,pattern定义日志格式。新增加的虚拟主机默认并不会生成类似默认虚拟主机的那个localhost.日期.log日志,错误日志会统一记录到catalina.out中。关于Tomcat日志,你最需要关注catalina.out,当出现问题时,我们应该第一想到去查看它。

 

转载于:https://my.oschina.net/u/3803396/blog/1836113

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值