多臺tomcat主機(win2003平臺)做負載均衡時,希望共享虛擬目錄,沒有采用同步各主機虛擬目錄的方式,所以只能在檔案伺服器上開闢共享目錄,將tomcat的context docpath指向它。tomcat主機上將共享目錄對映為本地磁碟,配置如下
<Context docBase="V:\shareDir" path="/app"/>
如果是script方式(通過startup.bat),可正常啟動,以服務方式啟動tomcat時,總是報“Document base does not exist or is not a readable directory”,修改tomcat啟動服務賬戶為administrator,問題依舊,懷疑服務模式下無法訪問網路驅動器,將docbase指向共享目錄的UNC path即遠端訪問方式
<Context docBase="\\192.168.1.2\shareDir" path="/app"/>
新的錯誤出現了,報“java.io.IOException: 登入失敗: 未知的使用者名稱或錯誤密碼”,說明tomcat是可以通過unc path來配置context的docbase,不過當前的這個賬戶訪問受限,奇怪的是,在當前桌面環境中是可以順利訪問\\192.168.1.2\shareDir這一路徑的。聯想到這組伺服器都是在windows域控制環境下,以域使用者登入系統並將服務啟動賬戶改為域使用者domain\administrator,問題解決。
總結:
(1) tomcat可以通過unc path來配置context的docbase
(2)因為對映的網路驅動器,是在使用者的profile中配置, 服務模式下tomcat不能訪問到網路驅動器(猜想,可能可以通過修改profile來訪問網路驅動器)
(3)若遠端共享目錄只有域使用者才能訪問,在啟動tomcat服務時,必須指定以域使用者啟動服務
參考:
http://wiki.apache.org/tomcat/FAQ/Windows
http://blog.mattwoodward.com/accessing-a-network-drive-from-apache-and-tom?c=1
tomcat虛擬目錄對映網路共享目錄的問題
相關文章
- 修改Tomcat的網站根目錄與虛擬目錄Tomcat網站
- 儲存目錄的SMB目錄共享問題
- 探討:Jboss4.0下的webApp虛擬目錄對映配置問題WebAPP
- js獲取網站根路徑(站點及虛擬目錄),獲得網站的根目錄或虛擬目錄的根地址JS網站
- Nginx虛擬目錄alias和root目錄Nginx
- 虛擬目錄定位
- IIS虛擬目錄掛載檔案伺服器目錄伺服器
- [php]修改站點的虛擬目錄PHP
- tomcat6版本虛擬目錄詳細配置Tomcat
- Linux掛載Windows網路共享目錄(轉)LinuxWindows
- tomcat目錄解析Tomcat
- jboss下的server\all目錄和server\default目錄問題Server
- 在JSP獲取虛擬目錄JS
- jvm常問問題目錄JVM
- Nginx 配置二級虛擬目錄訪問 Laravel 重寫NginxLaravel
- Tomcat目錄結構Tomcat
- Oracle 11g RMAN虛擬私有目錄Oracle
- linux nfs 共享目錄LinuxNFS
- SVN的資料夾連結太強大了!(目錄連結,目錄對映,svn:externals)
- JBoss 的一些配置(埠,虛擬目錄,虛擬主機,中文問題,資料庫連線)資料庫
- 【目錄】JVM目錄JVM
- jboss釋出目錄問題?
- windows透過samba訪問aix的共享目錄WindowsSambaAI
- 在VirtualBox下RedHat Linux虛擬機器中掛載共享目錄RedhatLinux虛擬機
- Tomcat目錄結構解析Tomcat
- 手動給目錄新增製表符(解決目錄中頁碼前沒有虛線的問題)
- 【目錄】集合框架目錄框架
- Linux共享遠端目錄Linux
- 虛擬機器中的活動目錄:可能被忽視很久的問題和答案(1)虛擬機
- 遠端掛載NFS共享目錄引發當機問題NFS
- JavaScript 獲取目錄絕對路徑JavaScript
- 【目錄】JUC鎖框架目錄框架
- Tomcat的目錄結構詳解Tomcat
- 模仿 vscode-server 把原生程式碼目錄對映到外網VSCodeServer
- IT百問全文目錄
- win10如何建立網路共享目錄_win10怎麼建立網路共享檔案Win10
- Tomcat安裝目錄解釋Tomcat
- tomcat bin目錄下的startup.bat一閃而過的問題TomcatBAT