Tomcat實驗一

Tomcat實驗一

通過實驗學習Tomcat

  • ①8005端口
  • ②虛擬主機實驗
  • ③爲虛擬主機配置一個context



(1)8005端口

(1)Tomcat的8005端口說明:8005是Tomcat的管理端口,默認監聽在127.0.0.1上,若連接此端口直接shutdown可以關閉Tomcat服務。


(2)Tomcat的8005端口處理:建議禁用8005端口的管理功能。

(3)禁用8005端口的措施:

  • ①改端口:可以連接到Tomcat本機,該端口不適用,也有將端口改爲負數。
  • ②將shutdown改爲一串猜不到的字符串。
字符串的獲取:
[root@centos7-17 tomcat]# md5sum conf/server.xml
a00078b6cbeb9b3c169900257e788901  conf/server.xml

(4)示例:

[root@centos7-17 tomcat]# telnet 127.0.0.1 8005
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SHUTDOWN

==>使用Telnet命令連接本機8005端口,輸入SHUTDOWN直接將Tomcat進程關閉。



(2)配置WEB管理頁面


(1)點擊缺省主頁的Manager APP和Host Manager,將報403錯誤(訪問拒絕)

  • server status:server狀態管理
  • Manager APP:WEB部署的站點管理
  • host manager:虛擬主機管理
  • 管理和顯示當前Tomcat狀態:一般只配置再內網某主機顯示

(2)Tomcat中使用的user和roles,其中roles代表權限,如果一個user具有多個roles,則user具有的權限爲各roles的累加。
(3)賦予tomcat用戶管理Manager APP和Host Manager權限的配置 ``` ```
(4)賦予tomcat用戶管理Manager APP和Host Manager權限的配置步驟:
  • ①修改配置文件:#vim conf/tomcat-users.xml

  • ②修改context.xml文件

]# vim webapps/manager/META-INF/context.xml 
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />          #默認允許主機
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.*" />   #添加允許主機(NAT模式 Windows ip 192.168.38.1)

]# vim webapps//host-manager/META-INF/context.xml 
  allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.*" />
  • ③配置完,重啓Tomcat

(5)測試:






(3)配置虛擬主機
(1)虛擬主機:不同的路徑映射

(2)準備虛擬主機的目錄和JSP文件:

[root@centos7-17 ~]# mkdir /data/webapp/ROOT -pv
mkdir: created directory ‘/data/webapp’
mkdir: created directory ‘/data/webapp/ROOT’
[root@centos7-17 ~]# cat /data/webapp/ROOT/index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>jsp例子</title>
</head>
<body>
後面的內容是服務器端動態生成字符串,最後拼接在一起
<%
out.println("hello jsp");
%>
<br>
<%=request.getRequestURL()%>
</body>
</html>

(3)修改Tomcat配置文件,添加虛擬主機:

<Host name="node1.zcpzcp.com"  appBase="/data/webapp/"
    unpackWARs="true" autoDeploy="true">
</Host>


[root@centos7-17 tomcat]# vim conf/server.xml
.... 
</Host> #添加至<Host>平級就行
<Host name="node1.zcpzcp.com"  appBase="/data/webapp/"
    unpackWARs="true" autoDeploy="true">
</Host>
  • 配置完成後,重啓Tomcat

(4)Windows配置node1.zcpzcp.com的解析:

C:\Windows\System32\drivers\etc
192.168.38.17 node1.zcpzcp.com

(5)訪問:http://node1.zcpzcp.com:8080/


(6)訪問:

  • http://192.168.38.17:8080/ --> 默認虛擬主機響應
  • http://node1.zcpzcp.com:8080/ --> 配置的node1…虛擬主機響應



(4)配置的虛擬主機配置context

(1)context 說明:

<Context path="/test"  docBase="/data/test"  reloadable="" />
docBase=" "  --> 此路徑是相對於當前虛擬主機本地文件路徑
path="/test" --> 相對於當前虛擬主機的URL,那麼訪問:node1.zcpzcp.com/test
reloadable   -->  直接配置爲false。
        若爲true,將實時掃描當前context下的WEN-INF,META-INF的配置和類,實時重載應用,因此繁忙的系統,千萬不能打開此選項,直接設置爲false。


==>因此如果部署的test目錄在/data/webapp/目錄下的話:
    docBase="/data/test" = docBase="test"
    因爲node1.zcpzcp.com的虛擬主機目錄爲/data/webapp/ROOT/

(2)爲node1.zcpzcp.com虛擬主機添加一個context:

  • 修改配置文件:conf/server.xml
<Host name="node1.zcpzcp.com"  appBase="/data/webapp/"
    unpackWARs="true" autoDeploy="true">
    <Context path="/test"  docBase="test"  reloadable="false" />    #新增的context
</Host>


[root@centos7-17 tomcat]# vim conf/server.xml
    <Context path="/test"  docBase="test"  reloadable="false" />
  • 修改server.xml配置,重啓Tomcat

(3)構建目錄:

[root@centos7-17 webapp]# ll
drwxr-xr-x 2 root root 23 Nov 21 16:42 myapp1   #打算test的不同版本,因此test使用軟鏈接實現
drwxr-xr-x 2 root root 23 Nov 21 16:11 ROOT
lrwxrwxrwx 1 root root  7 Nov 21 16:42 test -> myapp1/


[root@centos7-17 webapp]# cat test/index.jsp 
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>jsp例子</title>
</head>
<body>
version:1               #注:這一行表示新加的v1版本
後面的內容是服務器端動態生成字符串,最後拼接在一起
<%
out.println("hello jsp");
%>
<br>
<%=request.getRequestURL()%>
</body>
</html>

(4)測試:http://node1.zcpzcp.com:8080/test/




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章