tomcat配置(tomcat虛擬服務(wù)目錄的設(shè)置)

    本文為大家介紹tomcat配置(tomcat虛擬服務(wù)目錄的設(shè)置),下面和小編一起看看詳細(xì)內(nèi)容吧。
    tomcat系統(tǒng)架構(gòu)和原理剖析之三——catalina容器
    container組件下有幾個(gè)具體的組件,分別是engine、host、context和wrapper。這4個(gè)組件(容器)
    這是一種父子關(guān)系。 tomcat 通過分層架構(gòu)使servlet 容器非常靈活。
    代表整個(gè)catalina servlet引擎,用于管理多個(gè)虛擬站點(diǎn)。一個(gè)service最多只能有一個(gè)engine。
    但是一個(gè)engine可以包含多個(gè)host
    代表一個(gè)虛擬主機(jī),或者說一個(gè)站點(diǎn),可以為tomcat配置多個(gè)虛擬主機(jī)地址,并下載每個(gè)虛擬主機(jī)
    可以包含多個(gè)上下文
    表示一個(gè)web應(yīng)用,一個(gè)web應(yīng)用可以包含多個(gè)wrapper
    代表一個(gè)servlet,wrapper是容器中的底層,不能包含容器
    以上組件的配置其實(shí)都體現(xiàn)在conf/server.xml中(畫外音:配置文件的標(biāo)簽關(guān)系可以體現(xiàn)這種設(shè)計(jì))。
    碼字不易,如果對(duì)你有用,點(diǎn)個(gè)贊點(diǎn)個(gè)贊
    tomcat虛擬主機(jī)配置
    站點(diǎn)根目錄為:c:\wwwroot
    站點(diǎn)1目錄為:c:\wwwroot\aaa ,域名為
    站點(diǎn)2目錄為:c:\wwwroot\bbb ,域名為
    站點(diǎn)第三個(gè)目錄為:c:\wwwroot\ccc,域名為
    tomcat配置文件為:tomcat路徑/conf/server.xml
    站點(diǎn)根目錄為:c:\wwwroot
    站點(diǎn)1目錄為:c:\wwwroot\aaa ,域名為
    站點(diǎn)2目錄為:c:\wwwroot\bbb ,域名為
    tomcat配置文件為:tomcat路徑/conf/server.xml
    note : 如果需要不同的域名訪問,修改host name='localhost' appbase='c:\wwwroot' unpackwars='true' autodeploy='true' name字段為對(duì)應(yīng)的域名。 host標(biāo)簽中可以加多個(gè)域名或者多個(gè)alias;/alias即可。其中connector port、defaulthost、hostname、appbase、docbase、log prefix是你實(shí)際的。
    a。不同服務(wù)組件的engine名稱可以指定為catalina。
    b.您可以將不同服務(wù)組件的host appbase指定為默認(rèn)的webapps。
    c。 context docbase='/data/java/appstore-web' path='' reloadable='true'/這個(gè)用來配置項(xiàng)目根路徑,即通過ip:端口訪問/data/java/appstore-web包訪問代替?zhèn)鹘y(tǒng)的ip:port/app
    假設(shè):
    第一個(gè)tomcat文件夾是tomcat8-1,路徑是/home/tomcat8-1/
    第二個(gè)tomcat文件夾為tomcat8-2,路徑為/home/tomcat8-2/
    修改tomcat文件夾/conf目錄下server.xml的監(jiān)聽端口為不同的端口。
    分別啟動(dòng)tomcat文件夾/bin目錄下的startup.sh。啟動(dòng)tomcat,停止同上。
    您可以運(yùn)行多個(gè)tomcat。
    注意:根據(jù)官方文檔,只有tomcat8.5和java7及以上版本支持sni。如果tomcat版本比較低,需要綁定多個(gè)域名,建議使用反向代理部署https。
    在connector port='8080' 配置字段下添加443 端口偵聽設(shè)置。
    注意:如果iis反向代理tomcat綁定https,勾選enable ssl offloading。如果tomcat沒有配置https訪問,請(qǐng)求無法得到正常響應(yīng)。
    比如:
    修改配置文件tomcat路徑/conf/tomcat-users.xml:
    阿里云虛擬主機(jī)怎么用
    問題
    一:萬網(wǎng)云虛擬主機(jī)怎么用,如何配置 整體簡(jiǎn)介:首先,萬網(wǎng)虛擬主機(jī)提供2年的免費(fèi)試用的。萬網(wǎng)的虛擬主機(jī)購買以后,需要經(jīng)過配置它的ftp密碼,數(shù)據(jù)密碼,主機(jī)管理控制臺(tái)用戶名密碼。把這樣都配置好以后,才可以能過ftp把網(wǎng)站文件上傳到云虛擬主機(jī)中去,再然后就可以使用你的網(wǎng)站了。
    所需工具:淘寶賬號(hào)(阿里賬號(hào))。
    步驟:
    開通空間后進(jìn)入管理面板
    查看你主機(jī)的各種信息:
    下載ftp軟件進(jìn)行連接
    連接后上傳網(wǎng)頁文件到網(wǎng)站目錄
    刪除里面的文件
    上傳文件。
    當(dāng)然上傳壓縮文件會(huì)更快!! 注意事項(xiàng):linux支持zip和tar,windows支持zip和rar
    上傳完畢后進(jìn)入控制面板 選擇文件解壓縮
    選擇上傳的文件
    選擇解壓的目錄,一般就網(wǎng)站根目錄了
    開始解壓
    解壓
    這時(shí)再到ftp軟件選擇刷新
    一般我們網(wǎng)站的程序打包都把網(wǎng)站放2級(jí)目錄,這時(shí)我們要把目錄移動(dòng)到網(wǎng)站跟目錄
    進(jìn)入網(wǎng)站的源碼目錄:全部選擇,再點(diǎn)移動(dòng)選項(xiàng)
    移動(dòng)到跟目錄 (根目錄htdocs/以下)
    完成
    接下打開你綁定的域名進(jìn)行網(wǎng)站安裝
    這里提示空間不足,但沒有關(guān)系,直接安裝
    這部要注意了。很多會(huì)員到這里都安裝不了 為什么呢其實(shí)就一個(gè)非常低級(jí)的錯(cuò)誤:數(shù)據(jù)庫連接地址
    阿里云的數(shù)據(jù)庫連接地址是:數(shù)據(jù)庫名.my3w 這步一定不要填錯(cuò)!
    點(diǎn)下一步就安裝成功了。是不是很簡(jiǎn)單?
    問題二:阿里云虛擬主機(jī)怎么用 虛擬主機(jī)都會(huì)給個(gè)ip地址,ftp賬號(hào)和密碼,把需要上傳的網(wǎng)頁內(nèi)容上傳到空間,域名和ip綁定就可以用域名訪問你上傳的內(nèi)容了.
    問題三:云服務(wù)器和云虛擬主機(jī)的區(qū)別 怎樣區(qū)分虛擬主機(jī)、vps主機(jī)和云服務(wù)器?首先說虛擬主機(jī),共享主機(jī)也稱虛擬主機(jī),從互聯(lián)網(wǎng)誕生至今,大部分站長(zhǎng)都是從共享主機(jī)(shared hosting)開始學(xué)習(xí)建站的。
    所謂共享主機(jī),就是一臺(tái)服務(wù)器上有許多網(wǎng)站,大家共享這臺(tái)服務(wù)器的硬件和帶寬。如果它發(fā)生故障,那么上面的所有網(wǎng)站都無法訪問。
    vps主機(jī)(virtualprivate server虛擬專用服務(wù)器),將一部服務(wù)器分割成多個(gè)虛擬專享服務(wù)器的優(yōu)質(zhì)服務(wù)。每個(gè)vps都可分配獨(dú)立公網(wǎng)ip地址、獨(dú)立操作系統(tǒng)、獨(dú)立超大空間、獨(dú)立內(nèi)存、獨(dú)立cpu資源、獨(dú)立執(zhí)行程序和獨(dú)立系統(tǒng)配置等。用戶除了可以分配多個(gè)虛擬主機(jī)及無限企業(yè)郵箱外,更具有獨(dú)立服務(wù)器功能,可自行安裝程序,單獨(dú)重啟服務(wù)器。
    云服務(wù)器可以看成是新一代的共享主機(jī)。首先,云服務(wù)器公司將它的硬件和網(wǎng)絡(luò)線路,做成一朵云,然后提供一些通向這朵云的網(wǎng)絡(luò)接口api,供客戶使用。這時(shí),每個(gè)客戶共享的不再是某一臺(tái)特定的服務(wù)器,而是云里的所有服務(wù)器。 比如,假設(shè)你要把本機(jī)的文件備份到網(wǎng)上,你可以使用共享主機(jī),把文件傳到某一臺(tái)服務(wù)器上;也可以使用云服務(wù)器,通過某種形式的接口,把它們傳到云里。也就是說,共享主機(jī)用戶直接面對(duì)特定的服務(wù)器,而云服務(wù)器用戶直接面對(duì)網(wǎng)絡(luò)接口,看不到服務(wù)器內(nèi)部。
    云服務(wù)器可以自由選擇操作系統(tǒng)類型。這其實(shí)是因?yàn)樵品?wù)器能真正獲得root權(quán)限,用戶可以重裝和升級(jí)操作系統(tǒng),而vps主機(jī)用戶沒有root權(quán)限,無法重裝和升級(jí)操作系統(tǒng)。 傳統(tǒng)服務(wù)器受限于硬件的可靠性,容易出問題,而且數(shù)據(jù)需要手工備份,而云服務(wù)器更穩(wěn)定,阿里云實(shí)例可用性達(dá) 99.95%,云盤數(shù)據(jù)可靠性不低于 99.9999999% 自動(dòng)宕機(jī)遷移,自動(dòng)快照備份(需手動(dòng)配置快照策略),數(shù)據(jù)恢復(fù)更方便。
    云服務(wù)器可以做到彈性擴(kuò)容。網(wǎng)站初始階段訪問量小的話,只需要一臺(tái)低配置的服務(wù)器即可,應(yīng)用程序、數(shù)據(jù)庫、文件等所有資源都在一臺(tái)服務(wù)器上。隨著網(wǎng)站發(fā)展,可以隨時(shí)調(diào)整 ecs 的配置和數(shù)量,無用擔(dān)心低配服務(wù)器在業(yè)務(wù)突增時(shí)帶來的資源不足問題。而且是不停機(jī)升級(jí)帶寬,5 分鐘內(nèi)停機(jī)升級(jí) cpu 和內(nèi)存,支撐業(yè)務(wù)的持續(xù)發(fā)展。
    所以,相比傳統(tǒng)服務(wù)器,云服務(wù)器更易用,成本也會(huì)更低。
    另外,使用云服務(wù)器呢,網(wǎng)站的安全等級(jí)會(huì)大大提升,像阿里云服務(wù)器就為用戶提供了云盾服務(wù),當(dāng)然還有安全等級(jí)更加高的其他安全服務(wù),這就要看大家的業(yè)務(wù)需要了。 更多云服務(wù)器的產(chǎn)品信息可以登錄阿里云網(wǎng)站了解哦。了解云服務(wù)器
    問題四:阿里云虛擬主機(jī) 的問題 tomcat 這樣的代理服務(wù)器是必須要有的,apache和nignx這樣的配置環(huán)境還需要搭配一個(gè)語言環(huán)境和數(shù)據(jù)庫。
    你要是只安裝 apache tomcat 也是可以的。 但是只能做靜態(tài)頁面,靜態(tài)頁面是不太好做登錄注冊(cè)留言這些交互功能的。
    問題五:阿里云虛擬主機(jī)裝wordpress怎么弄 云虛擬主機(jī)安裝wordpress很簡(jiǎn)單,主要步驟是:
    將域名綁定到虛擬主機(jī)。
    到wordpress官網(wǎng)下載最新版本的中文版安裝包
    .wordpress/
    用ftp軟件登錄虛擬主機(jī)的ftp賬號(hào),將下載的wordpress安裝包上傳到htdocs文件夾下。
    返回主機(jī)管理平臺(tái)解壓安裝包。
    解壓完成后我們看到新生成了一個(gè)wordpress文件目錄,我們需要把wordpress目錄下的所有文件移動(dòng)到虛擬主機(jī)的根目錄htdocs下。
    瀏覽器訪問綁定過的域名自動(dòng)進(jìn)入配置頁面
    重點(diǎn)是配置數(shù)據(jù)庫信息,數(shù)據(jù)庫主機(jī)需要你在后面加上端口:3306
    填寫完成后點(diǎn)擊提交,完成安裝。
    成功安裝后我們會(huì)進(jìn)入一個(gè)歡迎界面,你可以在這里配置你的站點(diǎn)信息。當(dāng)然這些信息可以在wp儀表盤修改。
    進(jìn)入wordpress后臺(tái)
    這樣就安裝完成了。
    問題六:阿里云虛擬主機(jī)的數(shù)據(jù)庫有什么用 推薦你用:阿里云虛擬主機(jī)-普及版(1g網(wǎng)頁空間,送50m sql數(shù)據(jù)庫,支持html/asp/net/php/mysql/mssql),需要備案:150元/年。
    可以加咱,在線上。
    問題七:阿里云虛擬主機(jī)增加空間怎么那么貴 是的,阿里云是大公司,產(chǎn)品自然會(huì)貴,主要是人家宣傳的多,打廣告的錢自然要在產(chǎn)品上面賺取過來。
    問題八:怎么監(jiān)控阿里云虛擬主機(jī)使用情況 1、進(jìn)入阿里云后臺(tái)管理,點(diǎn)云監(jiān)控--云服務(wù)監(jiān)控 就可以看到一些監(jiān)控?cái)?shù)據(jù)。
    2、使用行云管家,里面也有主機(jī)監(jiān)控,可以幫助你查看主機(jī)使用情況,還可以使用微信監(jiān)控查看。還有成本分析和,堡壘機(jī)的運(yùn)維審計(jì)等功能。
    問題九:阿里云 虛擬主機(jī) 使用什么軟件 wdcp用的是比較多的虛擬主機(jī)管理軟件,景安網(wǎng)絡(luò)的vps之家站點(diǎn)有相關(guān)詳細(xì)圖文安裝使用教程。
    tomcat如何配置 需要做的就是:按照你的需求配置tomcat,只要你正確配置,tomcat一般都能適合你的要求。下面是一系列關(guān)于tomcat的配置技巧,這些技巧源自于我的書:《tomcat權(quán)威指南》,希望對(duì)你有所幫助。 jason brittain
    1. 配置系統(tǒng)管理(admin web application)
    大多數(shù)商業(yè)化的j2ee服務(wù)器都提供一個(gè)功能強(qiáng)大的管理界面,且大都采用易于理解的web應(yīng)用界面。tomcat按照自己的方式,同樣提供一個(gè)成熟的管理工具,并且絲毫不遜于那些商業(yè)化的競(jìng)爭(zhēng)對(duì)手。tomcat的admin web application最初在4.1版本時(shí)出現(xiàn),當(dāng)時(shí)的功能包括管理context、data source、user和group等。當(dāng)然也可以管理像初始化參數(shù),user、group、role的多種數(shù)據(jù)庫管理等。在后續(xù)的版本中,這些功能將得到很大的擴(kuò)展,但現(xiàn)有的功能已經(jīng)非常實(shí)用了。
    admin web application被定義在自動(dòng)部署文件:catalina_base/webapps/admin.xml 。
    (譯者注:catalina_base即tomcat安裝目錄下的server目錄)
    你必須編輯這個(gè)文件,以確定context中的 docbase參數(shù)是絕對(duì)路徑。也就是說,catalina_base/webapps/admin.xml 的路徑是絕對(duì)路徑。作為另外一種選擇,你也可以刪除這個(gè)自動(dòng)部署文件,而在server.xml文件中建立一個(gè)admin web application的context,效果是一樣的。你不能管理admin web application這個(gè)應(yīng)用,換而言之,除了刪除catalina_base/webapps/admin.xml ,你可能什么都做不了。
    如果你使用userdatabaserealm(默認(rèn)),你將需要添加一個(gè)user以及一個(gè)role到catalina_base/conf /tomcat-users.xml 文件中。你編輯這個(gè)文件,添加一個(gè)名叫“admin”的role 到該文件中,如下:
    <role name=admin/>
    你同樣需要有一個(gè)用戶,并且這個(gè)用戶的角色是“admin”。象存在的用戶那樣,添加一個(gè)用戶(改變密碼使其更加安全):
    <user name=admin password=deep_dark_secret roles=admin/>
    當(dāng)你完成這些步驟后,請(qǐng)重新啟動(dòng)tomcat,訪問,你將看到一個(gè)登錄界面。admin web application采用基于容器管理的安全機(jī)制,并采用了jakarta struts框架。一旦你作為“admin”角色的用戶登錄管理界面,你將能夠使用這個(gè)管理界面配置tomcat。
    2.配置應(yīng)用管理(manager web application)
    manager web application讓你通過一個(gè)比admin web application更為簡(jiǎn)單的用戶界面,執(zhí)行一些簡(jiǎn)單的web應(yīng)用任務(wù)。
    manager web application被被定義在一個(gè)自動(dòng)部署文件中:
    catalina_base/webapps/manager.xml 。
    你必須編輯這個(gè)文件,以確保context的docbase參數(shù)是絕對(duì)路徑,也就是說 catalina_home/server/webapps/manager的絕對(duì)路徑。
    (譯者注:catalina_home即 tomcat安裝目錄)
    如果你使用的是userdatabaserealm,那么你需要添加一個(gè)角色和一個(gè)用戶到 catalina_base/conf/tomcat-users.xml文件中。接下來,編輯這個(gè)文件,添加一個(gè)名為“manager”的角色到該文件中:
    <role name=”manager”>
    你同樣需要有一個(gè)角色為“manager”的用戶。像已經(jīng)存在的用戶那樣,添加一個(gè)新用戶(改變密碼使其更加安全):
    <user name=manager password=deep_dark_secret roles=manager/>
    然后重新啟動(dòng)tomcat,訪問,將看到一個(gè)很樸素的文本型管理界面,或者訪問,將看到一個(gè)hmtl的管理界面。不管是哪種方式都說明你的manager web application現(xiàn)在已經(jīng)啟動(dòng)了。
    manager application讓你可以在沒有系統(tǒng)管理特權(quán)的基礎(chǔ)上,安裝新的web應(yīng)用,以用于測(cè)試。如果我們有一個(gè)新的web應(yīng)用位于/home/user /hello下在,并且想把它安裝到 /hello下,為了測(cè)試這個(gè)應(yīng)用,我們可以這么做,在第一個(gè)文件框中輸入“/hello”(作為訪問時(shí)的path),在第二個(gè)文本框中輸入“file: /home/user/hello”(作為config url)。
    manager application還允許你停止、重新啟動(dòng)、移除以及重新部署一個(gè)web應(yīng)用。停止一個(gè)應(yīng)用使其無法被訪問,當(dāng)有用戶嘗試訪問這個(gè)被停止的應(yīng)用時(shí),將看到一個(gè)503的錯(cuò)誤“503 - this application is not currently available”。
    移除一個(gè)web應(yīng)用,只是指從tomcat的運(yùn)行拷貝中刪除了該應(yīng)用,如果你重新啟動(dòng)tomcat,被刪除的應(yīng)用將再次出現(xiàn)(也就是說,移除并不是指從硬盤上刪除)。
    3.部署一個(gè)web應(yīng)用
    有兩個(gè)辦法可以在系統(tǒng)中部署web服務(wù)。
    1> 拷貝你的war文件或者你的web應(yīng)用文件夾(包括該web的所有內(nèi)容)到$catalina_base/webapps目錄下。
    2> 為你的web服務(wù)建立一個(gè)只包括context內(nèi)容的xml片斷文件,并把該文件放到$catalina_base/webapps目錄下。這個(gè)web應(yīng)用本身可以存儲(chǔ)在硬盤上的任何地方。
    如果你有一個(gè)war文件,你若想部署它,則只需要把該文件簡(jiǎn)單的拷貝到 catalina_base/webapps目錄下即可,文件必須以“.war”作為擴(kuò)展名。一旦tomcat監(jiān)聽到這個(gè)文件,它將(缺省的)解開該文件包作為一個(gè)子目錄,并以war文件的文件名作為子目錄的名字。接下來,tomcat將在內(nèi)存中建立一個(gè)context,就好象你在server.xml文件里建立一樣。當(dāng)然,其他必需的內(nèi)容,將從server.xml中的defaultcontext獲得。
    部署web應(yīng)用的另一種方式是寫一個(gè)context xml片斷文件,然后把該文件拷貝到catalina_base/webapps目錄下。一個(gè)context片斷并非一個(gè)完整的xml文件,而只是一個(gè) context元素,以及對(duì)該應(yīng)用的相應(yīng)描述。這種片斷文件就像是從server.xml中切取出來的context元素一樣,所以這種片斷被命名為 “context片斷”。
    舉個(gè)例子,如果我們想部署一個(gè)名叫mywebapp.war的應(yīng)用,該應(yīng)用使用realm作為訪問控制方式,我們可以使用下面這個(gè)片斷:
    <!--
    context fragment for deploying mywebapp.war
    -->
    <context path=/demo docbase=webapps/mywebapp.war
    debug=0 privileged=true>
    <realm classname=org.apache.catalina.realm.userdatabaserealm
    resourcename=userdatabase/>
    </context>
    把該片斷命名為“mywebapp.xml”,然后拷貝到catalina_base/webapps目錄下。
    這種context片斷提供了一種便利的方法來部署web應(yīng)用,你不需要編輯server.xml,除非你想改變?nèi)笔〉牟渴鹛匦裕惭b一個(gè)新的web應(yīng)用時(shí)不需要重啟動(dòng)tomcat。
    4.配置虛擬主機(jī)(virtual hosts)
    關(guān)于server.xml中“host”這個(gè)元素,只有在你設(shè)置虛擬主機(jī)的才需要修改。虛擬主機(jī)是一種在一個(gè)web服務(wù)器上服務(wù)多個(gè)域名的機(jī)制,對(duì)每個(gè)域名而言,都好象獨(dú)享了整個(gè)主機(jī)。實(shí)際上,大多數(shù)的小型商務(wù)網(wǎng)站都是采用虛擬主機(jī)實(shí)現(xiàn)的,這主要是因?yàn)樘摂M主機(jī)能直接連接到internet并提供相應(yīng)的帶寬,以保障合理的訪問響應(yīng)速度,另外虛擬主機(jī)還能提供一個(gè)穩(wěn)定的固定ip。
    基于名字的虛擬主機(jī)可以被建立在任何web服務(wù)器上,建立的方法就是通過在域名服務(wù)器(dns)上建立ip地址的別名,并且告訴web服務(wù)器把去往不同域名的請(qǐng)求分發(fā)到相應(yīng)的網(wǎng)頁目錄。因?yàn)檫@篇文章主要是講 tomcat,我們不準(zhǔn)備介紹在各種操作系統(tǒng)上設(shè)置dns的方法,如果你在這方面需要幫助,請(qǐng)參考《dns and bind》一書,作者是paul albitz and cricket liu (o'reilly)。為了示范方便,我將使用一個(gè)靜態(tài)的主機(jī)文件,因?yàn)檫@是測(cè)試別名最簡(jiǎn)單的方法。
    在tomcat中使用虛擬主機(jī),你需要設(shè)置dns或主機(jī)數(shù)據(jù)。為了測(cè)試,為本地ip設(shè)置一個(gè)ip別名就足夠了,接下來,你需要在server.xml中添加幾行內(nèi)容,如下:
    <server port=8005 shutdown=shutdown debug=0>
    <service name=tomcat-standalone>
    <connector classname=org.apache.coyote.tomcat4.coyoteconnector
    port=8080 minprocessors=5 maxprocessors=75
    enablelookups=true redirectport=8443/>
    <connector classname=org.apache.coyote.tomcat4.coyoteconnector
    port=8443 minprocessors=5 maxprocessors=75
    acceptcount=10 debug=0 scheme=https secure=true/>
    <factory classname=org.apache.coyote.tomcat4.coyoteserversocketfactory
    clientauth=false protocol=tls />
    </connector>
    <engine name=standalone defaulthost=localhost debug=0>
    <!-- this host is the default host -->
    <host name=localhost debug=0 appbase=webapps
    unpackwars=true autodeploy=true>
    <context path= docbase=root debug=0/>
    <context path=/orders docbase=/home/ian/orders debug=0
    reloadable=true crosscontext=true>
    </context>
    </host>
    <!-- this host is the first virtual host: -->
    <host name= appbase=/home/example/webapp>
    <context path= docbase=./>
    </host>
    </engine>
    </service>
    </server>
    tomcat的server.xml文件,在初始狀態(tài)下,只包括一個(gè)虛擬主機(jī),但是它容易被擴(kuò)充到支持多個(gè)虛擬主機(jī)。在前面的例子中展示的是一個(gè)簡(jiǎn)單的server.xml版本,其中粗體部分就是用于添加一個(gè)虛擬主機(jī)。每一個(gè)host元素必須包括一個(gè)或多個(gè) context元素,所包含的context元素中必須有一個(gè)是默認(rèn)的context,這個(gè)默認(rèn)的context的顯示路徑應(yīng)該為空(例如,path=””)。
    5.配置基礎(chǔ)驗(yàn)證(basic authentication)
    容器管理驗(yàn)證方法控制著當(dāng)用戶訪問受保護(hù)的web應(yīng)用資源時(shí),如何進(jìn)行用戶的身份鑒別。當(dāng)一個(gè)web應(yīng)用使用了basic authentication(basic參數(shù)在web.xml文件中auto-method元素中設(shè)置),而有用戶訪問受保護(hù)的web應(yīng)用時(shí),tomcat將通過http basic authentication方式,彈出一個(gè)對(duì)話框,要求用戶輸入用戶名和密碼。在這種驗(yàn)證方法中,所有密碼將被以64位的編碼方式在網(wǎng)絡(luò)上傳輸。
    注意:使用basic authentication通過被認(rèn)為是不安全的,因?yàn)樗鼪]有強(qiáng)健的加密方法,除非在客戶端和服務(wù)器端都使用https或者其他密碼加密碼方式(比如,在一個(gè)虛擬私人網(wǎng)絡(luò)中)。若沒有額外的加密方法,網(wǎng)絡(luò)管理員將能夠截獲(或?yàn)E用)用戶的密碼。但是,如果你是剛開始使用tomcat,或者你想在你的 web應(yīng)用中測(cè)試一下基于容器的安全管理,basic authentication還是非常易于設(shè)置和使用的。只需要添加<security-constraint>和<login-config>兩個(gè)元素到你的web應(yīng)用的web.xml文件中,并且在catalina_base/conf/tomcat-users.xml 文件中添加適當(dāng)?shù)模紃ole>和<user>即可,然后重新啟動(dòng)tomcat。
    下面例子中的web.xml摘自一個(gè)俱樂部會(huì)員網(wǎng)站系統(tǒng),該系統(tǒng)中只有member目錄被保護(hù)起來,并使用basic authentication進(jìn)行身份驗(yàn)證。請(qǐng)注意,這種方式將有效的代替apache web服務(wù)器中的.htaccess文件。
    <!--
    define the members-only area, by defining
    a security constraint on this application, and
    mapping it to the subdirectory (url) that we want
    to restrict.
    -->
    <security- constraint>
    <web-resource-collection>
    <web-resource-name>
    entire application
    </web-resource-name>
    <url-pattern>/members/*</url- pattern>
    </web-resource-collection>
    <auth-constraint>
    <role- name>member</role-name>
    </auth-constraint>
    </security- constraint>
    <!-- define the login configuration for this application -->
    <login-config>
    <auth-method>basic</auth-method>
    <realm- name>my club members-only area</realm-name>
    </login-config>
    6.配置單點(diǎn)登錄(single sign-on)
    一旦你設(shè)置了realm和驗(yàn)證的方法,你就需要進(jìn)行實(shí)際的用戶登錄處理。一般說來,對(duì)用戶而言登錄系統(tǒng)是一件很麻煩的事情,你必須盡量減少用戶登錄驗(yàn)證的次數(shù)。作為缺省的情況,當(dāng)用戶第一次請(qǐng)求受保護(hù)的資源時(shí),每一個(gè)web應(yīng)用都會(huì)要求用戶登錄。如果你運(yùn)行了多個(gè)web應(yīng)用,并且每個(gè)應(yīng)用都需要進(jìn)行單獨(dú)的用戶驗(yàn)證,那這看起來就有點(diǎn)像你在與你的用戶搏斗。用戶們不知道怎樣才能把多個(gè)分離的應(yīng)用整合成一個(gè)單獨(dú)的系統(tǒng),所有他們也就不知道他們需要訪問多少個(gè)不同的應(yīng)用,只是很迷惑,為什么總要不停的登錄。
    tomcat 4的“single sign-on”特性允許用戶在訪問同一虛擬主機(jī)下所有web應(yīng)用時(shí),只需登錄一次。為了使用這個(gè)功能,你只需要在host上添加一個(gè) singlesignon valve元素即可,如下所示:
    <valve classname=org.apache.catalina.authenticator.singlesignon
    debug=0/>
    在tomcat初始安裝后,server.xml的注釋里面包括singlesignon valve配置的例子,你只需要去掉注釋,即可使用。那么,任何用戶只要登錄過一個(gè)應(yīng)用,則對(duì)于同一虛擬主機(jī)下的所有應(yīng)用同樣有效。
    使用single sign-on valve有一些重要的限制:
    1> value必須被配置和嵌套在相同的host元素里,并且所有需要進(jìn)行單點(diǎn)驗(yàn)證的web應(yīng)用(必須通過context元素定義)都位于該host下。
    2> 包括共享用戶信息的realm必須被設(shè)置在同一級(jí)host中或者嵌套之外。
    3> 不能被context中的realm覆蓋。
    4> 使用單點(diǎn)登錄的web應(yīng)用最好使用一個(gè)tomcat的內(nèi)置的驗(yàn)證方式(被定義在web.xml中的<auth-method>中),這比自定義的驗(yàn)證方式強(qiáng),tomcat內(nèi)置的的驗(yàn)證方式包括basic、digest、form和client-cert。
    5> 如果你使用單點(diǎn)登錄,還希望集成一個(gè)第三方的web應(yīng)用到你的網(wǎng)站中來,并且這個(gè)新的web應(yīng)用使用它自己的驗(yàn)證方式,而不使用容器管理安全,那你基本上就沒招了。你的用戶每次登錄原來所有應(yīng)用時(shí)需要登錄一次,并且在請(qǐng)求新的第三方應(yīng)用時(shí)還得再登錄一次。當(dāng)然,如果你擁有這個(gè)第三方web應(yīng)用的源碼,而你又是一個(gè)程序員,你可以修改它,但那恐怕也不容易做。
    6> 單點(diǎn)登錄需要使用cookies。
    7.配置用戶定制目錄(customized user directores)
    一些站點(diǎn)允許個(gè)別用戶在服務(wù)器上發(fā)布網(wǎng)頁。例如,一所大學(xué)的學(xué)院可能想給每一位學(xué)生一個(gè)公共區(qū)域,或者是一個(gè)isp希望給一些web空間給他的客戶,但這又不是虛擬主機(jī)。在這種情況下,一個(gè)典型的方法就是在用戶名前面加一個(gè)特殊字符(~),作為每位用戶的網(wǎng)站,比如:
    tomcat提供兩種方法在主機(jī)上映射這些個(gè)人網(wǎng)站,主要使用一對(duì)特殊的listener元素。listener的 classname屬性應(yīng)該是org.apache.catalina.startup.userconfig,userclass屬性應(yīng)該是幾個(gè)映射類之一。如果你的系統(tǒng)是unix,它將有一個(gè)標(biāo)準(zhǔn)的/etc/passwd文件,該文件中的帳號(hào)能夠被運(yùn)行中的tomcat很容易的讀取,該文件指定了用戶的主目錄,使用passwduserdatabase 映射類。
    <listener classname=org.apache.catalina.startup.userconfig
    directoryname=public_html
    userclass=org.apache.catalina.startup.passwduserdatabase/>
    web文件需要放置在像/home/users/ian/public_html 或者 /users/jbrittain/public_html一樣的目錄下面。當(dāng)然你也可以改變public_html 到其他任何子目錄下。
    實(shí)際上,這個(gè)用戶目錄根本不一定需要位于用戶主目錄下里面。如果你沒有一個(gè)密碼文件,但你又想把一個(gè)用戶名映射到公共的像/home一樣目錄的子目錄里面,則可以使用homesuserdatabase類。
    <listener classname=org.apache.catalina.startup.userconfig
    directoryname=public_html homebase=/home
    userclass=org.apache.catalina.startup.homesuserdatabase/>
    這樣一來,web文件就可以位于像/home/ian/public_html 或者 /home/jasonb/public_html一樣的目錄下。這種形式對(duì)windows而言更加有利,你可以使用一個(gè)像c:\home這樣的目錄。
    這些listener元素,如果出現(xiàn),則必須在host元素里面,而不能在context元素里面,因?yàn)樗鼈兌加脩?yīng)用于host本身。
    8.在tomcat中使用cgi腳本
    tomcat主要是作為servlet/jsp容器,但它也有許多傳統(tǒng)web服務(wù)器的性能。支持通用網(wǎng)關(guān)接口(common gateway interface,即cgi)就是其中之一,cgi提供一組方法在響應(yīng)瀏覽器請(qǐng)求時(shí)運(yùn)行一些擴(kuò)展程序。cgi之所以被稱為通用,是因?yàn)樗茉诖蠖鄶?shù)程序或腳本中被調(diào)用,包括:perl,python,awk,unix shell scripting等,甚至包括java。當(dāng)然,你大概不會(huì)把一個(gè)java應(yīng)用程序當(dāng)作cgi來運(yùn)行,畢竟這樣太過原始。一般而言,開發(fā)servlet總要比cgi具有更好的效率,因?yàn)楫?dāng)用戶點(diǎn)擊一個(gè)鏈接或一個(gè)按鈕時(shí),你不需要從操作系統(tǒng)層開始進(jìn)行處理。
    tomcat包括一個(gè)可選的 cgi servlet,允許你運(yùn)行遺留下來的cgi腳本。
    為了使tomcat能夠運(yùn)行cgi,你必須做如下幾件事:
    1. 把servlets-cgi.renametojar (在catalina_home/server/lib/目錄下)改名為servlets-cgi.jar。處理cgi的servlet應(yīng)該位于 tomcat的classpath下。
    2. 在tomcat的catalina_base/conf/web.xml 文件中,把關(guān)于<servlet-name> cgi的那段的注釋去掉(默認(rèn)情況下,該段位于第241行)。
    3. 同樣,在tomcat的catalina_base/conf/web.xml文件中,把關(guān)于對(duì)cgi進(jìn)行映射的那段的注釋去掉(默認(rèn)情況下,該段位于第 299行)。注意,這段內(nèi)容指定了html鏈接到cgi腳本的訪問方式。
    4. 你可以把cgi腳本放置在web-inf/cgi 目錄下(注意,web-inf是一個(gè)安全的地方,你可以把一些不想被用戶看見或基于安全考慮不想暴露的文件放在此處),或者你也可以把cgi腳本放置在 context下的其他目錄下,并為cgi servlet調(diào)整cgipathprefix初始化參數(shù)。這就指定的cgi servlet的實(shí)際位置,且不能與上一步指定的url重名。
    5. 重新啟動(dòng)tomcat,你的cgi就可以運(yùn)行了。
    在tomcat中,cgi程序缺省放置在web-inf/cgi目錄下,正如前面所提示的那樣,web-inf目錄受保護(hù)的,通過客戶端的瀏覽器無法窺探到其中內(nèi)容,所以對(duì)于放置含有密碼或其他敏感信息的cgi腳本而言,這是一個(gè)非常好的地方。為了兼容其他服務(wù)器,盡管你也可以把cgi腳本保存在傳統(tǒng)的 /cgi-bin目錄,但要知道,在這些目錄中的文件有可能被網(wǎng)上好奇的沖浪者看到。另外,在unix中,請(qǐng)確定運(yùn)行tomcat的用戶有執(zhí)行cgi腳本的權(quán)限。
    9.改變tomcat中的jsp編譯器(jsp compiler)
    在tomcat 4.1(或更高版本,大概),jsp的編譯由包含在tomcat里面的ant程序控制器直接執(zhí)行。這聽起來有一點(diǎn)點(diǎn)奇怪,但這正是ant有意為之的一部分,有一個(gè)api文檔指導(dǎo)開發(fā)者在沒有啟動(dòng)一個(gè)新的jvm的情況下,使用ant。這是使用ant進(jìn)行java開發(fā)的一大優(yōu)勢(shì)。另外,這也意味著你現(xiàn)在能夠在ant中使用任何javac支持的編譯方式,這里有一個(gè)關(guān)于apache ant使用手冊(cè)的javac page列表。使用起來是容易的,因?yàn)槟阒恍枰冢糹nit-param> 元素中定義一個(gè)名字叫“compiler”,并且在value中有一個(gè)支持編譯的編譯器名字,示例如下:
    <servlet>
    <servlet-name>jsp</servlet- name>
    <servlet-class>
    org.apache.jasper.servlet.jspservlet
    </servlet- class>
    <init-param>
    <param-name>logverbositylevel</param-name>
    <param- value>warning</param-value>
    </init-param>
    <init-param>
    <param- name>compiler</param-name>
    <param-value>jikes</param-value>
    </init- param>
    <load-on-startup>3</load-on-startup>
    </servlet>
    當(dāng)然,給出的編譯器必須已經(jīng)安裝在你的系統(tǒng)中,并且classpath可能需要設(shè)置,那處決于你選擇的是何種編譯器。
    10.限制特定主機(jī)訪問(restricting access to specific hosts)
    有時(shí),你可能想限制對(duì)tomcat web應(yīng)用的訪問,比如,你希望只有你指定的主機(jī)或ip地址可以訪問你的應(yīng)用。這樣一來,就只有那些指定的的客戶端可以訪問服務(wù)的內(nèi)容了。為了實(shí)現(xiàn)這種效果,tomcat提供了兩個(gè)參數(shù)供你配置:remotehostvalve 和remoteaddrvalve。
    通過配置這兩個(gè)參數(shù),可以讓你過濾來自請(qǐng)求的主機(jī)或ip地址,并允許或拒絕哪些主機(jī)/ip。與之類似的,在apache的httpd文件里有對(duì)每個(gè)目錄的允許/拒絕指定。
    例如你可以把a(bǔ)dmin web application設(shè)置成只允許本地訪問,設(shè)置如下:
    <context path=/path/to/secret_files ...>
    <valve classname=org.apache.catalina.valves.remoteaddrvalve
    allow=127.0.0.1 deny=/>
    </context>
    如果沒有給出允許主機(jī)的指定,那么與拒絕主機(jī)匹配的主機(jī)就會(huì)被拒絕,除此之外的都是允許的。與之類似,如果沒有給出拒絕主機(jī)的指定,那么與允許主機(jī)匹配的主機(jī)就會(huì)被允許,除此之外的都是拒絕的。
    tomcat的功能是什么 tomcat是apache 軟件基金會(huì)的jakarta 項(xiàng)目中的一個(gè)核心項(xiàng)目,由apache、sun 和其他一些公司及個(gè)人共同開發(fā)而成。由于有了sun 的參與和支持,最新的servlet 和jsp 規(guī)范總是能在tomcat 中得到體現(xiàn),tomcat 5支持最新的servlet 2.4 和jsp 2.0 規(guī)范。因?yàn)閠omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的web 應(yīng)用服務(wù)器。
    當(dāng)配置正確時(shí),apache 為html頁面服務(wù),而tomcat 實(shí)際上運(yùn)行jsp 頁面和servlet。另外,tomcat和iis等web服務(wù)器一樣,具有處理html頁面的功能,另外它還是一個(gè)servlet和jsp容器,獨(dú)立的servlet容器是tomcat的默認(rèn)模式。不過,tomcat處理靜態(tài)html的能力不如apache服務(wù)器。目前tomcat最新版本為9.0。
    擴(kuò)展資料:
    tomcat-配置虛擬主機(jī)
    關(guān)于server.xml中“host”這個(gè)元素,只有在設(shè)置虛擬主機(jī)的才需要修改。虛擬主機(jī)是一種在一個(gè)web服務(wù)器上服務(wù)多個(gè)域名的機(jī)制,對(duì)每個(gè)域 名而言,都好象獨(dú)享了整個(gè)主機(jī)。實(shí)際上,大多數(shù)的小型商務(wù)網(wǎng)站都是采用虛擬主機(jī)實(shí)現(xiàn)的,這主要是因?yàn)樘摂M主機(jī)能直接連接到internet并提供相應(yīng)的帶 寬,以保障合理的訪問響應(yīng)速度,另外虛擬主機(jī)還能提供一個(gè)穩(wěn)定的固定ip。
    基于名字的虛擬主機(jī)可以被建立在任何web服務(wù)器上,建立的方法就是通過在域名服務(wù)器(dns)上建立ip地址的別名,并且告訴web服務(wù)器把去往不同域 名的請(qǐng)求分發(fā)到相應(yīng)的網(wǎng)頁目錄。
    參考資料來源:百度百科-tomcat
    好了,tomcat配置(tomcat虛擬服務(wù)目錄的設(shè)置)的介紹到這里就結(jié)束了,想知道更多相關(guān)資料可以收藏我們的網(wǎng)站。

    imac重裝macos(imac如何重裝win10)
    2020年手機(jī)信號(hào)好的手機(jī)(2021年手機(jī)信號(hào)好)
    華為平板怎么查詢真?zhèn)?/a>
    蘋果電腦安裝新系統(tǒng)需要多久(蘋果電腦安裝系統(tǒng)中斷怎么辦)
    蘋果m1芯片安裝虛擬機(jī)win10(蘋果m1芯片可以裝vmware)
    tomcat配置(tomcat虛擬服務(wù)目錄的設(shè)置)
    蘋果se 2g網(wǎng)絡(luò)怎么設(shè)置,蘋果手機(jī)怎么調(diào)只用2g上網(wǎng)
    蘋果 機(jī)械硬盤,如何在蘋果機(jī)器上安裝seagate硬盤
    oppor7截屏怎么截,qq截屏怎么截
    搜索時(shí)windows資源管理器已停止工作(資源管理器的搜索欄在哪)
    0x0000007b藍(lán)屏解決方案(0x0000007b藍(lán)屏是怎么回事)
    視頻聲音如何做鈴聲(怎樣制作鈴聲和視頻教程)
    創(chuàng)建appleid 出生日期無效(蘋果手機(jī)創(chuàng)建id出生日期無效怎么回事)
    硬盤錄像機(jī)不錄像怎么辦,海康硬盤錄像機(jī)怎么下載錄像
    海口哪里有戴爾直營(yíng)店啊
    怎么用電腦給ps4開加速器(怎樣用電腦給ps4加速)
    詳細(xì)教您電腦c盤怎么格式化啊(電腦的c盤如何格式化)
    12123支付頁面彈不出來怎么辦(12123支付頁面彈不出來了)
    七彩虹3060顯卡怎么樣(七彩虹3060ti開箱)
    華為雙擊屏幕放大怎么取消設(shè)置(華為雙擊屏幕放大怎么取消掉)
    主站蜘蛛池模板: 北岛玲在线一区二区| 国产品无码一区二区三区在线| 久久久久人妻一区二区三区| 福利电影一区二区| 亚洲美女一区二区三区| 国产av熟女一区二区三区| 国产AV天堂无码一区二区三区| 精品欧洲AV无码一区二区男男| 一区二区三区国产| 国产成人精品一区二区三区无码 | 性色AV一区二区三区无码| 精品无码人妻一区二区三区品| 成人区人妻精品一区二区不卡网站| 男人免费视频一区二区在线观看| 精品一区二区久久久久久久网精| 国产精品一区二区不卡| 3d动漫精品啪啪一区二区免费 | 波多野结衣中文一区| 日韩在线一区高清在线| 韩国女主播一区二区| 日韩免费一区二区三区| 精品国产一区二区三区久久影院| 国产成人精品一区二区A片带套| 97人妻无码一区二区精品免费| 国产91久久精品一区二区| 国产福利微拍精品一区二区| 精品国产a∨无码一区二区三区 | 日韩精品一区二区三区老鸭窝| 国产AV午夜精品一区二区入口| 夜色福利一区二区三区| 免费无码毛片一区二区APP| 精品国产一区二区三区色欲 | 亚洲国产日韩一区高清在线| 国产高清不卡一区二区| 91福利视频一区| 久久精品国内一区二区三区| 综合激情区视频一区视频二区| 国产午夜精品一区二区| 少妇激情一区二区三区视频| 中文激情在线一区二区| 国产AV天堂无码一区二区三区|