在Tcomcat目錄裡的,預設配置情況下把web應用放到webapps目錄裡面.預設配置中.webapps就像是網站的根目錄一樣.但是.如果網站很多.放多了會覺得混亂.那麼我們這裡的情況就是要把web應用放在另外一個地方.但是又要做成Tomcat的虛擬目錄.
這裡給出三個方法:
第一個:(不推薦):
更改server.xml.用記事本開啟該檔案.在<Host>和</host>之間加上
<Context path="/site" docBase="c:/site" reloadable="true" debug="0">
</Context>
參數:path 表示在瀏覽器中輸入http://localhost:8080/site
docBase表示你的程式包的物理絕對路徑,預設的相對路徑是$Tomcat_Home$/webapps
第二個:(推薦,便與維護)
直接在$tomcat_home$/conf/catalina/localhost目錄下寫設定檔,檔案名稱任意取,最好是跟你的web應用相同便於管理,如site.xml內容為
<Context path="/site" docBase="c:/site" reloadable="true" debug="0">
</Context>
注意:以上使用的是tomcat5.x,Tomcat6.0的/conf目錄下不再有/catalina/localhost等目錄,但是該方法仍可行,只需將context片段檔案放至/conf目錄下即可
第三個:更改整個根目錄:
找到<Host name="localhost" debug="0" appBase="webapps"
unpackWARs="true" autoDeploy="true">
將appBase的設定成期望的路徑(絕對路徑)
出現的問題:輸入:http://localhost:8080/沒有出現預設的頁面
原因當然是更改了路徑造成的。解決是把檔案拷過來,或者再把原來預設的設成虛擬路徑。
配置JDBC串連池
直接在我們之前配置虛擬目錄中的<Context path="/site" docBase="c:/site" reloadable="true" debug="0">
</Context>
加入下面這些內容
<Resource name="jdbc/MySqlDS" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="DBusername" password="DBpassword" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/DBNAME?autoReconnect=true&useUnicode=true&characterEncoding=gb2312"/>
整個配置變為如下:
<Context path="/site" docBase="c:/site" reloadable="true" debug="0">
<Resource name="jdbc/MySqlDS" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="DBusername" password="DBpasswrod" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/DB?autoReconnect=true&useUnicode=true&characterEncoding=gb2312"/>
</Context>
根據實際情況可以自己更改上面斜體的部分.