tomcat简学、部署静态网站、多端口访问

安装

下载tomcat压缩包:
https://tomcat.apache.org/download-80.cgi

解压之后如下:
这里写图片描述

1、启动tomcat

#先给bin目录可执行权限
sudo chmod -R 777 bin/
#然后到bin目录下执行
./startup.sh start

启动之后,我们用浏览器访问一下:http://localhost:8080
8080是tomcat默认的端口。
会看到这样一个页面:
这里写图片描述
这就说明 我们的tomcat 这个web服务器成功启动了,并且有个默认的网站。

2、默认网站
这里写图片描述

webapps下的ROOT就默认的网站根目录,里面的index.jsp就是我们上面访问的页面文件。

3、停止tomcat

 ./shutdown.sh

配置

conf目录下包含了tomcat的基础配置
这里写图片描述

先来看server.xml这个配置文件,这是一个全局的配置文件。

<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">
 ......
  <Service name="Catalina">
       <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
       <Engine name="Catalina" defaultHost="localhost">
             <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
             </Host>
             .......
       </Engine>
       ......        
  </Service>
</Server>

最外层是Servershutdowntomcat支持远程关闭;
Service节点,可以创建多个;
Service里有多个Connector,这个Connector控制了客户端通过什么方式(HTTP/1.1)去连接服务器;
Host节点,配置了根目录是webapps,如果我们在webapps里创建一个mytest/index.html,然后就可以通过http://localhost:8080/mytest/index.html 来访问;

刚才这个路径,还可以配置,在<Host>节点里配置<Context>

扫描二维码关注公众号,回复: 1429762 查看本文章
<Context path="abc" docBase="mytest"/>

修改了配置,记得重启tomcat
然后就可以这样访问:http://localhost:8080/abc/index.html

<Context path="" docBase="mytest"/>

甚至这样访问:http://localhost:8080/index.html

修改tomcat的web目录

   <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

默认的web目录是在tomcat包里的webapps,可以修改为其他路径。
比如我修改到这个地址:

    <Host name="localhost"  appBase="/Users/.../www"
            unpackWARs="true" autoDeploy="true">

这里写图片描述

按照tomcat的要求,还需要创建一个名为ROOT目录,把网页放进去。
这样在访问http://localhost:8080 就是访问的我们刚才创建的网页了。

记得修改了配置,要重启tomcat

多端口

简单说就是把<Service>在来一份

  <Service name="Catalina2">
       <Connector port="8088" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
        <Engine name="Catalina2" defaultHost="localhost">
             <Host name="localhost"  appBase="/Users/.../www"
            unpackWARs="true" autoDeploy="true">
             </Host>
       </Engine>        
  </Service>

这个Service我指定了端口是8088,然后我们访问http://localhost:8088 ,确实是appBase的网站。

猜你喜欢

转载自blog.csdn.net/github_26672553/article/details/78970264
今日推荐