Tomcat 学习开发笔记 目录简介 配置虚拟目录 配置域名 设置虚拟主机
- bin:启动和关闭tomcat的bat文件
-
conf:配置文件
-
server.xml
该文件用于配置server相关的信息,比如tomcat启动的端口号,配置主机(Host) -
web.xml
文件配置与web应用(web应用相当于一个web站点) -
tomcat-user.xml
配置用户名密码和相关权限.
-
-
lib:该目录放置运行tomcat运行需要的jar包
- logs:存放日志,当我们需要查看日志的时候,可以查询信息
- webapps:放置我们的web应用
- work工作目录:该目录用于存放jsp被访问后生成对应的server文件和.class文件
配置虚拟目录
,默认情况下,只有webapps下的目录才能被Tomcat自动管理成一个web站点,把web站点的目录分散到其他磁盘管理就需要配置虚拟目录。把web应用所在目录交给web服务器管理,这个过程称之为虚拟目录的映射
方法一:
在${TOMCAT_NOME}/conf/server.xml文件中加入,如下代码。path表示的是访问时输入的web名,docBase表示的是站点目录的绝对路径
<Context path="/web1" docBase="path/of/web1"/>
方法二:
进入到${TOMCAT_NOME}/conf/Catalina/localhost文件下,创建一个xml文件,该文件的名字就是站点的名字。
xml文件的代码如下,docBase是你web站点的绝对路径
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="path/of/web1" reloadable="true"/>
配置域名
编辑/etc/hosts文件,添加域名:
127.0.0.1 localhost 127.0.1.1 ubuntu # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
设置虚拟主机
通过作用虚拟主机,可以使多个不同域名的网站共存于一个Tomcat中
在tomcat的server.xml文件中添加主机名:
<Host name="hostname" appBase="path/of/webapps">
<Context path="/web1" docBase="path/of/web1"/>
</Host>
host appBase属性 指定WEB应用程序的配置目录。是 tomcat安装目录下的相对路径也可以自定义一绝对目录路径作为webapps应用存放点。 设定例:<Host name="localhost" appBase="webapps" > 譬如当你把 abc.war发布到webapps目录下的时候,通过下面的URL就可以访问了。 http://servername:端口号/abc
Context doBase属性 当你要把WEB应用程序发布到webapps以外的目录下的时候,就要用这个设置。 要指定绝对路径。
<Host name="tomcat" appBase="/home/focus/Templates/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" /> <!--<Context path="/test1" docBase="/home/focus/Templates/webapps/test1" />--> </Host>
总结:
appBase,这个目录表示:
1 这个目录下面的子目录将自动被部署为应用。
2 这个目录下面的.war文件将被自动解压缩并部署为应用
而docBase只是指向了你某个应用的目录,这个可以和appBase没有任何关系。
,默认情况下,只有webapps下的目录才能被Tomcat自动管理成一个web站点,把web站点的目录分散到其他磁盘管理就需要配置虚拟目录。把web应用所在目录交给web服务器管理,这个过程称之为虚拟目录的映射
方法一:
在${TOMCAT_NOME}/conf/server.xml文件中加入,如下代码。path表示的是访问时输入的web名,docBase表示的是站点目录的绝对路径
<Context path="/web1" docBase="path/of/web1"/>
方法二:
进入到${TOMCAT_NOME}/conf/Catalina/localhost文件下,创建一个xml文件,该文件的名字就是站点的名字。
xml文件的代码如下,docBase是你web站点的绝对路径
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="path/of/web1" reloadable="true"/>
配置域名
编辑/etc/hosts文件,添加域名:
127.0.0.1 localhost 127.0.1.1 ubuntu # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
设置虚拟主机
通过作用虚拟主机,可以使多个不同域名的网站共存于一个Tomcat中
在tomcat的server.xml文件中添加主机名:
<Host name="hostname" appBase="path/of/webapps">
<Context path="/web1" docBase="path/of/web1"/>
</Host>
host appBase属性 指定WEB应用程序的配置目录。是 tomcat安装目录下的相对路径也可以自定义一绝对目录路径作为webapps应用存放点。 设定例:<Host name="localhost" appBase="webapps" > 譬如当你把 abc.war发布到webapps目录下的时候,通过下面的URL就可以访问了。 http://servername:端口号/abc
Context doBase属性 当你要把WEB应用程序发布到webapps以外的目录下的时候,就要用这个设置。 要指定绝对路径。
<Host name="tomcat" appBase="/home/focus/Templates/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" /> <!--<Context path="/test1" docBase="/home/focus/Templates/webapps/test1" />--> </Host>
总结:
appBase,这个目录表示:
1 这个目录下面的子目录将自动被部署为应用。
2 这个目录下面的.war文件将被自动解压缩并部署为应用
而docBase只是指向了你某个应用的目录,这个可以和appBase没有任何关系。
编辑/etc/hosts文件,添加域名:
127.0.0.1 localhost 127.0.1.1 ubuntu # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters
通过作用虚拟主机,可以使多个不同域名的网站共存于一个Tomcat中
在tomcat的server.xml文件中添加主机名:
<Host name="hostname" appBase="path/of/webapps">
<Context path="/web1" docBase="path/of/web1"/>
</Host>
host appBase属性 指定WEB应用程序的配置目录。是 tomcat安装目录下的相对路径也可以自定义一绝对目录路径作为webapps应用存放点。 设定例:<Host name="localhost" appBase="webapps" > 譬如当你把 abc.war发布到webapps目录下的时候,通过下面的URL就可以访问了。 http://servername:端口号/abc
Context doBase属性 当你要把WEB应用程序发布到webapps以外的目录下的时候,就要用这个设置。 要指定绝对路径。
<Host name="tomcat" appBase="/home/focus/Templates/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" /> <!--<Context path="/test1" docBase="/home/focus/Templates/webapps/test1" />--> </Host>
总结:
appBase,这个目录表示:
1 这个目录下面的子目录将自动被部署为应用。
2 这个目录下面的.war文件将被自动解压缩并部署为应用
而docBase只是指向了你某个应用的目录,这个可以和appBase没有任何关系。