相對而言,建立子目錄的方式更安全高效。但為什麼還要有虛擬目錄呢?這是因為虛擬目錄解決了web檔案必須放在web根目錄下的難題。一方面,這樣大大增加web工程的儲存空間。另一方面,也為多個不同的工程共享同一份檔案提供了保障。比如,當我們多個**都需要訪問同一份檔案時,我們只需將該虛擬路徑指向改檔案的位址即可,這樣就避免了同一份檔案多次拷貝的問題。
在tomcat7版本下,配置虛擬路徑修改以下兩個檔案:
1.server.xml
開啟tomcat目錄下的/conf/server.xml檔案,在host之前加入下面紅色部分的內容。
unpackwars="true" autodeploy="true">
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
path : 工程名稱+檔案路徑,當訪問path目錄下的檔案時,實則訪問docbase目錄下的檔案。
docbase : 檔案的真實路徑。注意這裡如果有檔案長傳,則將上傳的檔案路徑設定為docbase,而不是path。
2. web.xml
開啟tomcat目錄下的/conf/web.xml,將下面紅色部分listings的屬性設定為true。
default
org.apache.catalina.servlets.defaultservlet
debug
0
listings
true
1
不可否認,虛擬目錄的使用為我們的開發和部署帶來了極大的便利,但是由於配置虛擬目錄必須要將listings屬性設定為true,這樣就將該目錄下的所有檔案都暴露給了使用者,這樣也給系統的使用帶來了一定的風險。所以,選擇使用虛擬目錄一定要慎重。
tomcat虛擬目錄
web專案中會遇到這樣的問題,當在伺服器重新部署時此前上傳的之類的資源全都會沒了,那麼有沒有個好辦法了。好的,tomcat虛擬目錄能幫我們解決這問題。首先第一步是要去修改tomcat目錄中的server.xml檔案 路徑 tomcat home conf server.xml 和web.xml 路徑...
Tomcat虛擬目錄
虛擬目錄的建立 開啟tomcat的conf中的server.xml,新增 例如 這樣我們就能通過http localhost 8080 xmgl訪問到d盤下面的shop專案。但是這樣做每次修改server.xml檔案都要重啟tomcat生效,所以推薦使用如下方法 在conf中的catalina中的l...
tomcat虛擬目錄!
1 設定tomcat 的虛擬目錄 在tomcat中的 apache tomcat 6.0.32 conf 下的server.xml.檔案中的配置虛擬目錄。unpackwars true autodeploy true xmlvalidation false xmlnamespaceaware fal...