放TOMCAT的服務端許多人使用
本來啟動一直正常
某日突然
startup啟動TOMCAT一閃而過
通過cmd啟動矣是如此,啟動失敗
最后通過改shutdown port解決問題
<Server port="8005" shutdown="SHUTDOWN">
改成了8015
其他網上找到的問題及解決方案:
1. 重要網站
2. Tomcat服務器的配置文件(server.xml)
E:\tomcat6\conf\server.xml
(1)關閉tomcat元素
<Server port="8005" shutdown="SHUTDOWN">用于關閉tomcat服務器
(2)修改TOMCAT端口號
在服務器配置文件中的 <Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" /> 修改便可。
(3)要注意的問題
問題:如果在server.xml文件中加入中文,則服務器加載不起來了,
原因:是xml文件中沒有設置編碼
辦法:第一行加入<?xml version="1.0" encoding="GB2312" ?>
當Tomcat啟動出錯的時候,一閃就過去了,說明在startup批處理文件中用dos的start命令啟動了一個新窗口會計從業代考 會計從業答案
在catalina.bat中找到下面這段代碼:
========================================================
:doStart
shift
if not "%OS%" == "Windows_NT" goto noTitle
set _EXECJAVA=start "Tomcat" %_RUNJAVA%
goto gotTitle
:noTitle
set _EXECJAVA=start %_RUNJAVA%
=========================================================
將紅色字符串刪掉就可以看到錯誤
3. GlobalNamingResources元素
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
服務器端創建對象供給Servlet或JSP使用,例如數據庫連接池對象
4. Service元素
<Service name="Catalina">
5. Engine元素
<Engine name="Catalina" defaultHost="localhost">
在一個服務器引擎上可以通過在這個元素里增加子元素<Host>來配置多個主機,
在<Host>元素中配置<Context>子元素可以增加多個站點(Web應用程序)
5. 配置一個站點(Web應用程序)
<Context path="/TestApp" docBase="e:\TestApp" />
參數path是用于瀏覽器訪問的站點根目錄
參數docBase是對應的硬盤上的物理目錄
tomcat默認部署目錄:tomcat/webapps/
6. 配置元素里的斜杠問題
在配置文件里的路徑不用雙斜杠
java源程序中的路徑用雙斜杠,是用于給編譯器javac的,編譯器會把雙斜杠轉換為單斜杠證券從業代考,銀行從業答案
而配置文件中的路徑是給虛擬機java的,會直接讀取單斜杠
7. 查看端口占用情況
netstat -na 但不知道端口被誰占用
可以用ActivePort.exe軟件查看
netstat -na | findstr 3306
查找指定端口有沒有被占用
8. 設置默認根目錄
==========================================================
默認根目錄,瀏覽器訪問網站時,不用再寫目錄名
方法一: 在server.xml中加入
<Context path="" docBase="e:\TestApp" />
方法二: 把工程放入webapps下,并一定要起名為ROOT
==========================================================
方法三: conf\Catalina\localhost\*.xml
Catalina是對應的引擎,有多少個引擎,在這就有多少個目錄
Localhost 對應的是站點,有多少個站點,就有多少個目錄,這個目錄中又有多個xml配置文件,每個配置文件都對應一個Web應用程序。
在xml文件中寫入<Context docBase="e:\test">元素,虛擬目錄名字屬性(path)不用寫,虛擬目錄名就是這個xml的文件名心理咨詢師代考 心理咨詢師答案
方法三在tomcat5.5中操作成***,在6中不推薦使用,但是也可以根據server.xml配置文件中的引擎,站點,web應用程序結構手工寫入目錄文件結構
9. 將項目打成war包
打成包的項目放到webapps下面不用解壓,tomcat會將項目自動解壓展開
打包后會自動生成META-INF文件夾
進入要打包的文件夾:jar -cvf webcontent.war .(點代表當前目錄)
或者不進入文件夾:jar -cvf webcontent.war -C webcontent .
-C 代表改變目錄
10. conf/web.xml通用配置文件
為所有的web應用程序進行配置,通用配置文件
配置默認網頁(歡迎頁面)
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
如果沒找到對應的網頁則打印文件列表報錯
11. 批處理實例
batch 批@echo hehe 加@的作用是不會讓echo命令顯示出來或者直接設置@echo off ,整個批處理文件就不會顯示命令變量要用雙引號引起來 "%OS%"
12. 連接器
https協議支持加密,默認端口號為443
要支持https協議,需要加入連接器
在tomcat/conf/server.xml中存在一個元素:(默認被注釋掉)
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
必須為這個連接器申請一個證書,這個證書由專門的機構頒發審核
產生一個證書用JAVA_HOME/bin/keytool命令查幫助文檔,再將這個加入到連接器<Connector>元素
13. 對稱加密和非對稱加密
對稱加密: 加密密碼和解秘密密碼相同
非對稱加密:加密密碼和解密密碼不同,共鑰加密的數據可以被私鑰解密,私鑰加密的數據也能被公鑰解密,發鑰的必須是個權威機構(CA)
根據要傳輸的數據計算出一個16位的128bit的一個數值,只要內容被改動一點,這個值就會被改變(很大的改變 www.ly-ang.com
數字簽名,數字證書
15. SSL會話原理
將密碼進行非對稱加密,SSL會話過程中的加密處理是瀏覽器與服務器自動完成的