1. 程式人生 > >tomcat虛擬目錄的配置與訪問

tomcat虛擬目錄的配置與訪問

Tomcat無法管理<Tomcat安裝目錄>/webapps目錄以外的Web應用程式

設定虛擬路徑的優勢我總結有兩點,很常見的兩點優勢:第一、我們開發一個專案,在未定版之前需要進行無數次的修改,如果部署測試專案的時候直接將專案打成war包放到webapps目錄下,那麼每一次版本變更都需要將新的版本放到webapps目錄下覆蓋原先的版本,這樣對於我們測試專案來說是不是非常麻煩呢?如果建立一個虛擬路徑,直接對映到專案原件,這樣一來在測試階段是不是非常的方便?(當然這點對於使用整合開發環境工具的開發者來說可以忽略);第二、Tomcat是一個伺服器,既然是一個伺服器是不是就有容量這麼一說呢?雖然這個容量是你說了算,但是再怎麼大是不是也有碟符容量限制?如果將所有的專案都部署到webapps目錄下,當專案比較大而且專案較多的時候是不是需要考慮一下碟符的感受呢?所以使用虛擬路徑也可以為搭載Tomcat伺服器的碟符分壓!

方法1(修改配置檔案):這是最最最常見的一種方法

在Tomcat7的安裝目錄下找到conf目錄,在該目錄下有一個server.xml檔案,這個檔案的任務是配置整個伺服器資訊。例如修改埠號,新增虛擬主機…… 開啟這個檔案,找到HOST標籤,

在這個標籤中處插入以下程式碼:

<Context docBase="F:\Java\upload" path="/hotel/upload" reloadable="true"/>

說明:

  • path:指定訪問該 Web 應用的 URL 入口。
  • docBase:指定 Web 應用的檔案路徑,可以給定絕對路徑,也可以給定相對於<Host>的appBase 屬性的相對路徑,如果 Web 應用採用開放目錄結構,則指定 Web 應用的根目錄,如果 Web 應用是個 war 檔案,則指定 war 檔案的路徑。(指定專案所在地址)
  • reloadable:如果這個屬性設為 true,tomcat 伺服器在執行狀態下會監視在WEB-INF/classes 和 WEB-INF/lib 目錄下 class 檔案的改動,如果監測到有 class 檔案被更新的,伺服器會自動重新載入 Web 應用。
  • crossContext:如果想在應用內呼叫 ServletContext.getContext()來返回在該虛擬主機上執行的其他 web application 的 request dispatcher,設為 true。在安全性很重要的環境中設為 false,使得 getContext()總是返回 null。預設值為 false。
  • Debug:與這個 Engine 關聯的 Logger 記錄的除錯資訊的詳細程度。數字越大,輸出越詳細。如果沒有指定,預設為 0。

這個方法一般在設定後都需要重啟伺服器才有效(有時候即使設定了reloadable=“true” 也需要重新啟動)

方法2(新增配置檔案):推薦使用,不需要重啟伺服器

在Tomcat根目錄下的/conf/Catalina/localhost/ 路徑下新建一個filename.xml,並在該xml中編寫語句

<ContextdocBase="F:\Java\JavaWebWorkspace\news"/>

即可建立虛擬站點,虛擬站點名為filename。注意docbase指向你自己的應用程式目錄,各引數參見方法1中的<Context>標籤的引數(注意此檔名將作為Context中的path屬性值,不管檔案裡的path屬性值如何設定也是無效的 )。

如果需要分層虛擬站點,可以將檔名改成a#b#c,訪問分層虛擬站點時用localhost:8080/a/b/c

方法3:

在Tomcat根目錄下的conf目錄context.xml檔案中插入

<Context docBase="F:\Java\upload" path="/hotel/upload" reloadable="true"/>

注意,這個虛擬路徑修改方法會讓所有的站點都能載入,https://localhost:8080/zhang

使用這個之前最好將service.xml中的列表設定開啟。

方法4:

在Tomcat根目錄下的路徑/conf/Catalina/localhost/context.xml.default ,在這裡進行配置,這個虛擬路徑修改方法會讓該主機下的所有的站點都能載入,同上。

配置xml之後,如圖


在頁面上訪問時

<img style='max-width:68px;width:68px;width:expression(width>68?"68px":width "px");max-width: 68px;'
  src="localhost:8080/hotel/upload/01.jpg">

相關推薦

tomcat 虛擬目錄配置appBase和docBase的區別

子目錄 如果 目錄文件 doc text name js xml xml文件 pre 先看server.xml文件host配置 <Host name="localhost" appBase="webapps" 可以修改成自己想要的目錄

Tomcat虛擬目錄配置

通過虛擬目錄訪問到專案檔案 1 在自己的任意碟符中新建資料夾virtualDIR(最好不要在C盤),建立index.html檔案 2 在Tomcat安裝目錄下的conf資料夾(我的是D:\a

tomcat虛擬目錄配置訪問

Tomcat無法管理<Tomcat安裝目錄>/webapps目錄以外的Web應用程式設定虛擬路徑的優勢我總結有兩點,很常見的兩點優勢:第一、我們開發一個專案,在未定版之前需要進行無數次的修改,如果部署測試專案的時候直接將專案打成war包放到webapps目錄下,那

CentOS7 yum安裝Tomcat並實現多域名虛擬目錄配置

最近正在學習開發servlet,在學習搭建伺服器的時候遇到了不少問題,現在總結一下,留個筆記以備後用。 一、安裝Tomcat  Tomact需要基於Java環境執行,所以同時需要安裝java。 yum install java-1.8.0* yum install tomcat1212 二、多域名及虛擬

配置Tomcat虛擬目錄和主機,通過主機名來訪問項目

進行 通過 port 工程 步驟 .net ber ava itl 目的:在學習javaweb的過程中,經常會用瀏覽器來訪問項目,但是每次訪問時都需要輸入一大串路徑,非常麻煩。這裏教大家配置tomcat虛擬主機,訪問項目時,直接輸入虛擬主機名字即可! 步驟: 1. 設置默認

Tomcat目錄結構配置檔案

目錄結構:/bin:指令碼檔案目錄/lib:存放所有web專案都可以訪問的公共jar包(使用common類載入器載入)/conf:存放配置檔案/logs:存放日誌檔案/temp:存放Tomcat執行時的臨時檔案/webapps:web應用釋出目錄/work:Tomcat把各種由jsp生成的servlet檔案放

tomcat 虛擬目錄,檔案不再工程目錄 訪問方法

多臺tomcat主機(win2003平臺)做負載均衡時,希望共享虛擬目錄,沒有采用同步各主機虛擬目錄的方式,所以只能在檔案伺服器上開闢共享目錄,將tomcat的context docpath指向它。tomcat主機上將共享目錄對映為本地磁碟,配置如下<Context

Linux 配置tomcat 虛擬目錄

有時候我們部署專案的時候,不想要輸入專案名,只要輸入一個域名就可以訪問的話,就需要配置一下Tomcat的虛擬目錄 配置虛擬目錄的方法有很多種,在這裡列舉最好用的兩種 方法1:編輯Tomcat的Ser

linux下配置tomcat虛擬目錄

本文預設jdk、tomcat等都已經在linux上面部署完成 1.開啟tomcat conf 目錄下的server.xml 2.在最底下找到</Host> 3.在該行上面新增<Context docBase="/root/pic" path="/FCS/p

tomcat虛擬目錄的陷阱(不同的訪問方式,不一樣的結果)

    有這樣一個案例,你通過配置tomcat的虛擬目錄,將預設訪問介面由tomcat介面改為你的網站介面。當你採用虛擬目錄訪問你的網站時,報500錯誤。但是當你不是通過虛擬目錄,而是直接訪問資源的話,錯誤消失。這是我在專案中遇到的一個bug,並最終解決,分享所得。   

Tomcat 虛擬目錄主機名

虛擬目錄的 Why&& How 場景 你寫了個webApp,專案名叫ASimpleWebApp,然後你訪問的話,需要敲localhost:8080/ASimpleWebApp,

tomcat的簡單配置適用默認的web應用

復制 ava 實用 jar 文件的 pps 定制 jdk name 指定tomcat端口: server.xml: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout

Angular5學習筆記 - 虛擬RestfulApi配置使用(六)

window com scripts mac restfu alt 新建 服務 src 一、安裝json-server功能   #windows cnpm install json-server -g #Mac & Linux sudo npm install j

Tomcat虛擬主機配置(基於域名/端口)

Tomcat什麽是虛擬主機? 虛擬主機就是把一臺真正的主機分成許多“虛擬”的主機,每一臺虛擬主機都具有獨立的域名和IP地址,具有完整的Internet服務器功能。虛擬主機之間完全獨立,在外界看來,每一臺虛擬主機和一臺獨立的主機完全一樣。 配置文件位置: tomcat/conf/server.xml文件2.to

nginx虛擬目錄配置

home nbsp 虛擬 uri tail alias https location -s 參考文章:https://blog.csdn.net/whatday/article/details/50649461 1. location ~ ^/awstats/ {

Tomcat安裝環境配置自啟動

str strong tex 電腦 jdk環境配置 href 計算機 bsp 提示符 1. Jdk下載 1)下載連接 http://www.oracle.com/technetwork/java/javase/downloads/index.html 然後傻瓜安裝

Nginx安裝配置訪問統計

ln -s 是否 use ati nginx 服務 hat 代理服務 tex smtp Nginx (engine x) 是一個高性能的HTTP和反向代理服務,也是一個IMAP/POP3/SMTP服務。Nginx是由伊戈爾·賽索耶夫為俄羅斯訪問量第二的Rambler.ru站

hadoop-虛擬配置hadoop基本配置

efi shuff lap 目錄 測試 rep 成功 apach eno 一、虛擬機設置 環境:centos6.4 vmware網絡適配器:橋接模式,禁用vmnet8 vim /etc/sysconfig/network-scripts/ifcfg-eth0 網關的設置參考

hadoop-虛擬機器配置hadoop基本配置

一、虛擬機器設定 環境:centos6.4 vmware網路介面卡:橋接模式,禁用vmnet8 vim /etc/sysconfig/network-scripts/ifcfg-eth0 閘道器的設定參考外部機器的預設閘道器 DEVICE=eth0 TYPE=Ethernet

apache的虛擬目錄配置

<IfModule dir_module> DirectoryIndex index.html index.htm index.php Alias /myblog "F:/myblog" <Directory d:/myblog> order all