一個tomcat可以部署幾個項目,tomcat catalina localhost 沒有項目_Tomcat簡介--01

 2023-10-15 阅读 19 评论 0

摘要:一、tomcat簡介Tomcat是Apache軟件基金會(Apache Software Foundation)的Jakarta項目中的一個核心項目,由Apache,Sun和其他一些公司及個人共同開發而成Tomcat服務器是一個免費的開放源代碼的Web應用服務器,屬于輕量級應用服務器,在中小型系統和并發訪問用戶不是很多的場合下被

一、tomcat簡介

Tomcat是Apache軟件基金會(Apache Software Foundation)的Jakarta項目中的一個核心項目,由Apache,Sun和其他一些公司及個人共同開發而成

Tomcat服務器是一個免費的開放源代碼的Web應用服務器,屬于輕量級應用服務器,在中小型系統和并發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP程序的首選.

Tomcat和Nginx,Apache(httpd),lighttpd等Web服務器一樣,具有處理HTML頁面的功能,另外它還是一個Server和JSP容器,獨立的Server容器是Tomcat的默認模式,.不過,Tomcat處理靜態HTML的能力不如Nginx/Apache服務器.
其他JAVA容器還有resin,weblogic等

二、 tomcat安裝

1.環境介紹

2.部署java環境

[root@sweb01 ~]# yum install java-1.8.0 -y[root@sweb01 ~]# java -versionopenjdk version "1.8.0_222"OpenJDK Runtime Environment (build 1.8.0_222-b10)OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

3.部署tomcat

[root@sweb01 ~]# mkdir /data/soft -p[root@sweb01 ~]# cd /data/soft/[root@sweb01 /data/soft]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.43/bin/apache-tomcat-8.5.43.tar.gz[root@sweb01 /data/soft]# tar zxf apache-tomcat-8.5.43.tar.gz -C /opt/[root@sweb01 /data/soft]# cd /opt/[root@sweb01 /opt]# ll總用量 4drwxr-xr-x 9 root root 4096 8月  10 16:37 apache-tomcat-8.5.43[root@sweb01 /opt]# ln -s apache-tomcat-8.5.43 tomcat[root@sweb01 /opt]# ll -h總用量 4.0Kdrwxr-xr-x 9 root root 4.0K 8月  10 16:37 apache-tomcat-8.5.43lrwxrwxrwx 1 root root   20 8月  10 16:37 tomcat -> apache-tomcat-8.5.43[root@sweb01 /opt]# echo 'export TOMCAT_HOME=/opt/tomcat'>>/etc/profile[root@sweb01 /opt]# source /etc/profile[root@sweb01 /opt]# /opt/tomcat/bin/version.sh    Using CATALINA_BASE:   /opt/tomcatUsing CATALINA_HOME:   /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME:        /usrUsing CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jarServer version: Apache Tomcat/8.5.43Server built:   Jul 4 2019 20:53:15 UTCServer number:  8.5.43.0OS Name:        LinuxOS Version:     3.10.0-327.el7.x86_64Architecture:   amd64JVM Version:    1.8.0_222-b10JVM Vendor:     Oracle Corporation

4.tomcat目錄介紹

總目錄

[root@sweb01 ~]# cd /opt/tomcat/[root@sweb01 /opt/tomcat]# tree -L 1├── bin             #用以啟動,關閉Tomcat或其他腳本功能的腳本(.bat和.sh)├── conf            #用以配置Tomcat的XML及DTD文件├── lib             #存放web應用能訪問的JAR包├── logs            #Catalina和其他web應用程序的日志文件├── temp            #臨時文件├── webapps         #Web應用程序根目錄└── work            #用以產生有JSP編譯出的Servlet的.java和.class文件

一個tomcat可以部署幾個項目,webapps目錄

[root@sweb01 /opt/tomcat]# cd webapps/[root@sweb01 /opt/tomcat/webapps]# ll總用量 8drwxr-x--- 14 root root 4096 8月  10 16:37 docs          #tomcat幫助文檔drwxr-x---  6 root root   78 8月  10 16:37 examples      #web應用drwxr-x---  5 root root   82 8月  10 16:37 host-manager  #管理drwxr-x---  5 root root   97 8月  10 16:37 manager       #管理drwxr-x---  3 root root 4096 8月  10 16:37 ROOT          #默認網站根目錄

bin目錄

腳本            作用startup.sh           開啟tomcat腳本shutdown.sh          關閉tomcat腳本catalina.shtomcat    核心管理腳本,以后jvm優化參數及相關配置,修改tomcat啟動參數

5.啟動tomcat

[root@sweb01 /opt/tomcat/bin]# cd[root@sweb01 ~]# /opt/tomcat/bin/startup.sh Using CATALINA_BASE:   /opt/tomcatUsing CATALINA_HOME:   /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME:        /usrUsing CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jarTomcat started.

6.檢查和測試

[root@sweb01 ~]# ps -ef|grep tomcatroot       2249      1  5 16:49 pts/1    00:00:01 /usr/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/opt/tomcat -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start[root@sweb01 ~]# ss -lntup|grep tomcat[root@sweb01 ~]# ss -lntup|grep javatcp    LISTEN     0      100      :::8009                 :::*                   users:(("java",pid=2249,fd=54))tcp    LISTEN     0      100      :::8080                 :::*                   users:(("java",pid=2249,fd=49))tcp    LISTEN     0      1      ::ffff:127.0.0.1:8005                 :::*                   users:(("java",pid=2249,fd=69))

8.訪問網站

9f5a9cec84437f95ceab0086a72ca4d1.png

9.查看tomcat日志

[root@sweb01 ~]# tail -f /opt/tomcat/logs/catalina.out 10-Aug-2019 16:50:03.831 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-8.5.43/webapps/docs] has finished in [25] ms10-Aug-2019 16:50:03.831 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-8.5.43/webapps/examples]10-Aug-2019 16:50:04.144 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-8.5.43/webapps/examples] has finished in [313] ms10-Aug-2019 16:50:04.144 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-8.5.43/webapps/host-manager]10-Aug-2019 16:50:04.164 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-8.5.43/webapps/host-manager] has finished in [20] ms10-Aug-2019 16:50:04.164 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/opt/apache-tomcat-8.5.43/webapps/manager]10-Aug-2019 16:50:04.196 信息 [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/opt/apache-tomcat-8.5.43/webapps/manager] has finished in [31] ms10-Aug-2019 16:50:04.213 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]10-Aug-2019 16:50:04.219 信息 [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]10-Aug-2019 16:50:04.221 信息 [main] org.apache.catalina.startup.Catalina.start Server startup in 44249 ms

10.關閉命令

[root@sweb01 ~]# /opt/tomcat/bin/shutdown.sh Using CATALINA_BASE:   /opt/tomcatUsing CATALINA_HOME:   /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME:        /usrUsing CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar[root@sweb01 ~]# ss -lntup|grep java  

三、 tomcat配置文件

1.tomcat配置文件介紹

[root@sweb01 ~]# tree /opt/tomcat/conf//opt/tomcat/conf/├── Catalina│   └── localhost├── catalina.policy├── catalina.properties├── context.xml├── jaspic-providers.xml├── jaspic-providers.xsd├── logging.properties├── server.xml              #主配置文件├── tomcat-users.xml        #管理用戶配置文件├── tomcat-users.xsd└── web.xml

2.tomcat管理

測試功能,生產環境不要用
Tomcat管理功能用于對Tomcat自身以及部署在Tomcat的應用管理的web應用,在默認的情況下處于禁止狀態的.如果需要開啟這個功能,就要配置管理用戶,即配置前面說過的tomcat-user.xml
下面是命令集合:
修改tomcat-users.xml

[root@sweb01 ~]# cat /opt/tomcat/conf/tomcat-users.xml    <?xml version='1.0' encoding='utf-8'?>

修改context.xml文件

[root@sweb01 ~]# grep "10" /opt/tomcat/webapps/manager/META-INF/context.xml             allow="10.d+.d+.d+|::1|0:0:0:0:0:0:0:1" />

重新啟動tomcat

[root@sweb01 ~]# /opt/tomcat/bin/shutdown.sh Using CATALINA_BASE:   /opt/tomcatUsing CATALINA_HOME:   /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME:        /usrUsing CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar[root@sweb01 ~]# /opt/tomcat/bin/startup.sh Using CATALINA_BASE:   /opt/tomcatUsing CATALINA_HOME:   /opt/tomcatUsing CATALINA_TMPDIR: /opt/tomcat/tempUsing JRE_HOME:        /usrUsing CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jarTomcat started.

3.訪問網頁測試

3986f0520e61f16cb69ca74fc472ce49.png

四、 tomcat主配置文件Server.xml詳解

1.server.xml組件類別

tomcat應用日志、? 頂級組件:位于整個配置的頂層,如server
? 容器類組件:可以包含其它組件的組件,如server,engine,host,context
? 連接器組件:連接用戶請求至tomcat,如connector
? 被嵌套類組件:位于一個容器內,不能包含其它組件,如Valve,logger.

2.組件詳情

engine:核心容器組件,catalina引擎,負責通過connector接受用戶請求,并處理請求,將請求轉至對應的虛擬主機hosthost:類似于httpd中的虛擬主機,一般而言支持基于FQDN的虛擬主機context:定義一個應用程序,是一個最內層的容器類組件(不能再嵌套).篇日志context的主要目的指定對應的webapp的根目錄,類似于httpd的alias,其還能為webapp指定額外的屬性,如部署方式等.connector:接收用戶請求,類似于httpd的listen配置監聽端口.service(服務):將connector關聯至engine,因此一個service內部可以有多個connector,但只能有一個引擎engine.service內部有兩個connector,一個engine.因此一個service內部可以有多個connector.server:表示一個運行于JVM中的tomcat實例Valve:閥門,攔截請求并在將其轉至對應的webapp前進行某種處理操作,可以用于任何容器中,比如記錄日志(access log valve),基于IP做訪問控制(remote address filter valve).logger: 日志記錄器,用于記錄組件內部的狀態信息,可以用于除context外的任何容器中.realm:可以用于任意容器類的組件中,關聯一個用戶認證庫,實現認證和授權.可以關聯的認證庫有兩種:UserDatabaseRealm,MemoryRealm和JDBCRealmUserDatabaseRealm:使用JNDI自定義的用戶認證庫.MemoryRealm:認證信息定義在tomcat-users.xml中JDBCRealm:認證信息定義在數據庫中,并通過JDBC連接至數據庫查找認證用戶.

3.配置文件注釋

tomcat配置文件注釋<?xml version='1.0' encoding='utf-8'?>

五、 Tomcat端口解釋

tomcat啟動之后默認會啟動3個端口,分別是8080,8009,8005

8080端口和8443端口

這個端口用于監聽瀏覽器發送的請求,設置為80后可以直接使用域名訪問,但是如果使用普通賬戶啟動的tomcat,則不能使用小于1024的端口
8443端口是用于https連接的,除了打開注釋之外還需要有域名證書才可以

8009端口

tomcat發布項目。Nginx反向代理tomcat的時候可以使用ajp協議反向代理到該端口
不過我們常用的還是反向代理到8080。

8005端口

tomcat監聽的額關閉端口,就是說這個端口負責關閉tomcat的請求
當執行shutdown.sh關閉tomcat就是鏈接8085端口執行shutdown命令

六、 WEB站點部署

1.使用war包部署web站點

上線的代碼有兩種方式,第一種方式是直接將程序目錄放在webapps目錄下面,這種方式大家已經明白了,就不多說了,第二種方式是使用開發工具將程序打包成war包,然后上傳到webapps目錄下面,下面我們見識一下這種方式.

2.自定義默認網站目錄

[root@sweb01 /opt/tomcat/webapps]# lsdocs  examples  host-manager  manager  ROOT[root@sweb01 /opt/tomcat/webapps]# rz      #上傳軟件包[root@sweb01 /opt/tomcat/webapps]# ls      #上傳完畢后tomcat會自動解壓memtest.war包docs  examples  host-manager  manager  memtest  memtest.war  ROOT

3.訪問測試

瀏覽器訪問:http://10.0.1.9:8080/memtest/meminfo.jsp

2d5b37194ffaaa5cf7f6a6b1abb9e917.png

4.自定義默認網站目錄

tomcat項目?上面訪問的的網址為:http://10.0.1.9:8080/memtest/meminfo.jsp
現在我想訪問格式為:http://10.0.1.9:8080/meminfo.jsp
應該怎么修改呢?
方法一:
將meminfo.jsp或其他程序放在tomcat/webapps/ROOT目錄下即可.因為默認網站根目錄為tomcat/webapps/ROOT
方法二:
修改配置文件,操作命令如下:

[root@sweb01 ~]# vim /opt/tomcat/conf/server.xml    148           150              

5.訪問測試

5d316a3d7f952abdf32755b86109caed.png

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/137911.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息