NEIL's_學而時習之x不學無術~私藏IT技術經驗分享部落

關於部落格
NEIL. Cheng....寫作只是為了日後工作之備忘操作參考

本部落格文章撰寫前進邁向第五年(since 2009 ~至今)仍繼續推進分享IT學習!!About Windows/Linux Server,Virtualization


分享網誌: 由於,本人預先完成LAB後,才補上撰寫文章與截圖,若發現文圖對照說明有誤..本人將盡快校正,也請不吝指教! Thanks!

  • 153344

    累積人氣

  • 44

    今日人氣

    0

    訂閱人氣

網管人工作日誌之: Tomcat8 Server 建置組態牛刀小試 by Neil

 [Name-Based & SSL 虛擬目錄 建置步驟]

建置2個虛擬主機資料目錄

Domain:  neil0918u.com

mkdir    /tomcat8/v1   # v1.neil0918u.com 站台資料

mkdir    /tomcat8/v2
  # v2.neil0918u.com 站台資料

mkdir   /tomcat8/ssl   #存放ssl 憑證資訊


[ 寫兩筆資料] 稍待測試 (請在兩台.223 & .224) 主機上建置兩個虛擬目錄

echo  "v1.neil0918u.com:8080" >  /tomcat/v1/index.jsp

echo  "v2.neil0918u.com:8080" > /tomcat/v2/index.jsp    


編輯 /tomcat8/conf/server.xml  修改加入以下對應虛擬主機配置設定

<Host name="v1.neil0918u.com"  appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/tomcat8/v1" reloadadble="true">
</Context>
</Host>

<Host name="v2.neil0918u.com"  appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/tomcat8/v2" reloadadble="true">
</Context>
</Host>


[手動關閉Tomcat]    

 /tomcat/bin/shutdown.sh   
 
[手動啟動Tomcat]                    #生效虛擬機配置
 
 /tomcat/bin/startup.sh   

接下來 [DNS 網域對應配置]

由於目前手邊無DNS Serv 我就拿目前Win7 PC 在 hosts 檔案新增兩筆主機對應紀錄(存檔後離開)

192.168.11.224 --->  v1.neil0918u.com             #以.224 主機為例


192.168.11.224  -->  v2.neil0918u.com


[驗收測試Name - Based 虛擬主機(http)]

瀏覽器輸入: http://v1.neil0918u.com:8080

                  http://v2.neil0918u.com:8080



[ v1 虛擬主機] : 依照正確資料顯示


[ v2 虛擬主機] 亦依照正確資料顯示


使用JDK Tool : keytool 生成keystore 檔案進行憑證存儲(替網站加密https)

以 [ v1 ] 虛擬主機為例(使用https加密]

cd /tomcat8/ssl

keytool  -genkey  -alias  tomcat  -keyalg  RSA -keystore .keystore

#會先要你定義key Passwd  = > 之後詢答方式類似我們之前使用過.CA 註冊詢答內容近似

  若要交由Versign 單位進行簽署時需另轉成csr 交給 Versign處理..在此我們略過後續步驟

   上述OK後將建立一個名為".keystore"檔案  


編輯 /tomcat8/conf/server.xml  修改加入以下對應SSL憑證配置啟用

 <Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
 
    disableUploadTimeout="true" enableLookups="false" maxThreads="25"
 
    port="443" keystoreFile="/tomcat8/ssl/.keystore" keystorePass="xxxxx"
 
    protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
 
    secure="true" sslProtocol="TLS" />

#粉紅色port 預設:8443 本例修改為常用*:443 ,keystoreFile=請修改剛建立.keystore路徑

  keystorePass  修正為剛步驟建立keystore Pass



[手動關閉Tomcat]    

 /tomcat/bin/shutdown.sh   
 
[手動啟動Tomcat]                    #生效SSL虛擬機配置
 
 /tomcat/bin/startup.sh   

  


[驗收測試Name - Based 虛擬主機(https)]

https://v1.neil0918u.com/       #仍要繼續(由於憑證自己簽署所以有警訊)要更verisign 簽署..



  再檢視憑證主體資訊=> 使否有符合我司剛建立內容?  已符合



OK  https  虛擬主機 配置完成告一段落




 [JSP 連接MariaDB 配置]

1.st :  至  MySQL 官網下載 mysql-connector-java-5.1.28-bin.jar 

將打包檔tar.gz 解開 將 " mysql-connector-java-5.1.28-bin.jar "  移動到 /tomcat/lib 目錄下存放 

 以利我們就可以使用JDBC 方式利用前端.jsp  配置連線 後端mysql  

  編輯Connector 連線配置(包含在<Host><Context>... <Context></Host> 區段內

  vi   /tomcat8/conf/server.xml    #配置JDBC 存取MariaDB

<Host name="v1.neil0918u.com"  appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/tomcat8/v1" reloadadble="true">
<Resource name="jdbc/MySQLDS01" auth="Container" type="javax.sql.DataSource" factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/chunju" username="root" password="xxxx" maxActive="20" maxIdle="10" maxWait="-1" />
</Context>
</Host>



[手動關閉Tomcat]    

 /tomcat/bin/shutdown.sh   
 
[手動啟動Tomcat]                   
 
 /tomcat/bin/startup.sh   



[編寫JSP 連接MySQL 程序] : 以 v1.neil0918u.com 為例

程式範例: 參考網路他人修改測試連線用


 vi  /tomcat/v1/index.jsp 

<%@ page contentType="text/html; charset=utf8" language="java"%>
<%@page import="java.sql.*"%>
<%
Class.forName("com.mysql.jdbc.Driver").newInstance();
String url="jdbc:mysql://localhost/chunju?user=root&password=xxxx&useUnicode=true&characterEncoding=utf8";
Connection conn=DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from chun1";
%>
<table border=1>
<tr>
<td>編號</td>
<td>姓名</td>
<td>住址</td>
</tr>
<%
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){%>
<tr>
<td><%=rs.getString("no")%> </td>
<td><%=rs.getString("name")%> </td>
<td><%=rs.getString("address")%> </td>
</tr>
<%}%>
</table>
<%rs.close();
stmt.close();
conn.close();
%>



 登入MariaDB 比對一下SQL程式篩選擷取出資料行列是否一致


  進行網頁檢視: http://v1.neil0918u.com:8080    #與程式比對資料正確:共4筆

 
然而 JSP+MySQL連線測試成功告一段落)  備註: 字段1-3 三攔臨時微修改


 附帶一題Tomcat 有個簡易Web UI 介面 參考 

 需組態編輯  /tomcat8/conf/tomcat-users.xml 

 空白處插入以下這行配置 管理介面之存取: 

<user username="admin" password="xxxx" roles="manager-gui,admin-gui,admin" />


[手動關閉Tomcat]    

 /tomcat/bin/shutdown.sh   
 
[手動啟動Tomcat]                    #生效虛擬機配置
 
 /tomcat/bin/startup.sh   

打開瀏覽器登入: http://192.168.11.224:8080/manager    # 鍵入帳密登入




可以檢視像Server Status  統計數據等等


結論:

過去一年本人維運平台仍以LAMP 或 LNMP 架構為主,初次接觸Tomcat 基礎配置,以備日後組態參考

但本人還是不太習慣XML 組態方式..囧rz
相簿設定
標籤設定
相簿狀態