久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Tomcat簡(jiǎn)單網(wǎng)站部署的三種方式小結(jié)

瀏覽:3日期:2023-09-11 20:46:57
目錄1、隱式部署2、顯示部署3、xml 配置部署1、隱式部署

為什么可以隱式部署,是因?yàn)?Tomcat 配置了默認(rèn)主機(jī)對(duì)應(yīng)應(yīng)用 webapps,在 Engine 下你也可以配置其他主機(jī)(要保證你配置的主機(jī)在 ect/host 下有對(duì)應(yīng)關(guān)系),但是 appBase 要確保唯一。保證每臺(tái)主機(jī)下資源隔離,不會(huì)互相亂竄。如下所示:

提示:這里所說(shuō)的主機(jī)換個(gè)說(shuō)法叫做域名,localhost 是 127.0.0.1 的域名,otherlocalhost 也是 127.0.0.1 的一個(gè)域名。比如 localhost 域名對(duì)應(yīng)的 appBase 目錄是默認(rèn)的 webapps,webapps 下面又對(duì)應(yīng)著 n 多網(wǎng)站應(yīng)用。當(dāng)你用 http://localhost:8080 訪問(wèn)時(shí),Tomcat 就知道你要去訪問(wèn) webapps 目錄下的某個(gè)網(wǎng)站。當(dāng)你用 http://otherlocalhost:8080 訪問(wèn)時(shí),Tomcat 就知道你要去訪問(wèn) otherHostWeb 目錄下的某個(gè)網(wǎng)站。

<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 name='otherlocalhost' appBase='otherHostWeb' unpackWARs='true' autoDeploy='true'> </Engine></Service></Server>

假設(shè)現(xiàn)在我有個(gè)網(wǎng)站 MyWeb1,里面有個(gè) abc.html 頁(yè)面,內(nèi)容如下:

<h1>Hello World11111!!!</h1>

現(xiàn)在準(zhǔn)備把 MyWeb1 部署到 Tomcat 服務(wù)器上,可以直接把 MyWeb1 網(wǎng)站丟到默認(rèn)主機(jī) webapps 下面。如下圖示:

問(wèn)題:怎么訪問(wèn) webapps 主機(jī)下面的網(wǎng)站呢?

因?yàn)?webapps 主機(jī)下沒(méi)有指定 path 訪問(wèn)前綴,所以默認(rèn)就是 / 前綴。然后你想訪問(wèn) webapps 下哪個(gè)資源文件,直接定位到路徑即可,比如:abc.html 頁(yè)面,訪問(wèn)路徑:http://localhost:8080/MyWeb1/abc.html 即可。如果 MyWeb1 網(wǎng)站下有首頁(yè) index.html、index.jsp 等存在時(shí),直接訪問(wèn) http://localhost:8080/MyWeb1 就能夠進(jìn)入首頁(yè)。同理,訪問(wèn) webapps 主機(jī)下其他網(wǎng)站也是一個(gè)道理。

比如 docs 網(wǎng)站,訪問(wèn)路徑:http://localhost:8080/docs比如 manager 網(wǎng)站,訪問(wèn)路徑:http://localhost:8080/manager比如 host-manager 網(wǎng)站,訪問(wèn)路徑:http://localhost:8080/host-manager比如 examples 網(wǎng)站,訪問(wèn)路徑:http://localhost:8080/examples

最后提醒下每個(gè)網(wǎng)站都會(huì)有自己的服務(wù)處理類 Servlet,而這些 Servlet 都是通過(guò) WEB-INF/web.xml 集成進(jìn)來(lái)。

隱式部署有點(diǎn)不友好就是必須要把網(wǎng)站應(yīng)用放到 webapps 主機(jī)下(配置一臺(tái)主機(jī)的情況下)。如果這個(gè)主機(jī)下文件過(guò)多,容易出錯(cuò)。

2、顯示部署

在 Server.xml 文件中直接配置 Context 網(wǎng)站應(yīng)用即可,如下:

<Server port='8005' shutdown='SHUTDOWN'> <Service name='Catalina'> <Connector port='8080' protocol='HTTP/1.1' connectionTimeout='20000' redirectPort='8443' /> <Engine name='Catalina' defaultHost='localhost'> <Context path='/myWeb1' docBase='/Users/gwm/Downloads/MyWeb1' reloadable='true'> </Engine></Service></Server>appBase:相當(dāng)于是一個(gè)主機(jī)的根目錄 /,默認(rèn)名稱叫做 webappspath:在 webapps 主機(jī)下會(huì)有多個(gè)網(wǎng)站,可以通過(guò) path 來(lái)進(jìn)行區(qū)分docBase:path 訪問(wèn)網(wǎng)站文件具體目錄,比如上面的 abc.html 就在 /Users/gwm/Downloads/MyWeb1 文件目錄下。因?yàn)?docBase 可以指定網(wǎng)站資源文件位置,所以你就不用將網(wǎng)站再放到之前的 webapps 主機(jī)下面。

所以最終訪問(wèn) abc.html 的路徑是:http://localhost:8080/myWeb1/abc.html。

3、xml 配置部署

上面顯示部署需要修改 Server.xml 全局配置文件。該文件非常重要,一般不要輕易修改,否則啟動(dòng)不了。所以就這里提供了另外一種部署方法,也是最常用的一種方法—xml 配置方式。

當(dāng)你運(yùn)行一次 Tomcat 之后,Tomcat 會(huì)自動(dòng)在 conf 文件目錄下自動(dòng)生成 /config/Catalina/localhost/ 目錄。然后你就可以在這個(gè)目錄下新建一個(gè) xml 文件。xml 文件名稱就是你網(wǎng)站的訪問(wèn)路徑。比如新建一個(gè) abc.xml 文件,如下所示:

<?xml version='1.0' encoding='UTF-8'?><Context docBase='/Users/gwm/Downloads/MyWeb1' reloadable='true'></Context>

警告:這里注意聲明 xml 配置時(shí),第一行上面絕對(duì)不要有空行。否則這個(gè) xml 文件不生效。

整體目錄如下圖示:

最終訪問(wèn)路徑:http://localhost:8080/abc/abc.html 推薦使用第三種方式部署服務(wù)。修改的文件都是局部文件,不會(huì)影響到其他人的部署。

到此這篇關(guān)于Tomcat簡(jiǎn)單網(wǎng)站部署的三種方式小結(jié)的文章就介紹到這了,更多相關(guān)Tomcat網(wǎng)站部署內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Tomcat
相關(guān)文章:
主站蜘蛛池模板: 宜章县| 永嘉县| 罗平县| 威海市| 耿马| 鸡西市| 巩义市| 六枝特区| 宣城市| 新化县| 衡东县| 寿阳县| 余干县| 克拉玛依市| 库尔勒市| 遂川县| 顺平县| 莆田市| 新宁县| 西畴县| 郓城县| 横山县| 西平县| 潮安县| 澜沧| 高要市| 张家川| 茂名市| 扶沟县| 西城区| 常熟市| 长武县| 吴忠市| 东乌珠穆沁旗| 吉水县| 高淳县| 阳曲县| 高密市| 金门县| 靖远县| 土默特左旗|