熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java開源技術 >> 正文

tomcat啟動不了

2022-06-13   來源: Java開源技術 

  放TOMCAT的服務端許多人使用

  本來啟動一直正常

  某日突然

  startup啟動TOMCAT一閃而過

  通過cmd啟動矣是如此啟動失敗

  最後通過改shutdown port解決問題

  <Server port= shutdown=SHUTDOWN>

  改成了

  其他網上找到的問題及解決方案:

   重要網站

   Tomcat服務器的配置文件(serverxml)

  E:\tomcat\conf\serverxml

  ()關閉tomcat元素

  <Server port= shutdown=SHUTDOWN>用於關閉tomcat服務器

  ()修改TOMCAT端口號

  在服務器配置文件中的 <Connector port= protocol=HTTP/ maxThreads= connectionTimeout= redirectPort= /> 修改便可

  ()要注意的問題

  問題如果在serverxml文件中加入中文則服務器加載不起來了

  原因是xml文件中沒有設置編碼

  辦法第一行加入<?xml version= encoding=GB ?>

  當Tomcat啟動出錯的時候一閃就過去了說明在startup批處理文件中用dos的start命令啟動了一個新窗口

  在catalinabat中找到下面這段代碼

  ========================================================

  :doStart

  shift

  if not %OS% == Windows_NT goto noTitle

  set _EXECJAVA=start Tomcat %_RUNJAVA%

  goto gotTitle

  :noTitle

  set _EXECJAVA=start %_RUNJAVA%

  =========================================================

  將紅色字符串刪掉就可以看到錯誤

   GlobalNamingResources元素

  <GlobalNamingResources>

  <! Editable user database that can also be used by

  UserDatabaseRealm to authenticate users

  >

  <Resource name=UserDatabase auth=Container

  type=orgapachecatalinaUserDatabase

  description=User database that can be updated and saved

  factory=orgapachecatalinausersMemoryUserDatabaseFactory

  pathname=conf/tomcatusersxml />

  </GlobalNamingResources>

  服務器端創建對象供給Servlet或JSP使用例如數據庫連接池對象

   Service元素

  <Service name=Catalina>

   Engine元素

  <Engine name=Catalina defaultHost=localhost>

  在一個服務器引擎上可以通過在這個元素裡增加子元素<Host>來配置多個主機

  在<Host>元素中配置<Context>子元素可以增加多個站點(Web應用程序)

   配置一個站點(Web應用程序)

  <Context path=/TestApp docBase=e:\TestApp />

  參數path是用於浏覽器訪問的站點根目錄

  參數docBase是對應的硬盤上的物理目錄

  tomcat默認部署目錄tomcat/webapps/

   配置元素裡的斜槓問題

  在配置文件裡的路徑不用雙斜槓

  java源程序中的路徑用雙斜槓是用於給編譯器javac的編譯器會把雙斜槓轉換為單斜槓

  而配置文件中的路徑是給虛擬機java的會直接讀取單斜槓

   查看端口占用情況

  netstat na 但不知道端口被誰占用

  可以用ActivePortexe軟件查看

  netstat na | findstr

  查找指定端口有沒有被占用

   設置默認根目錄

  ==========================================================

  默認根目錄浏覽器訪問網站時不用再寫目錄名

  方法一: 在serverxml中加入

  <Context path= docBase=e:\TestApp />

  方法二: 把工程放入webapps下並一定要起名為ROOT

  ==========================================================

  方法三: conf\Catalina\localhost\*xml

  Catalina是對應的引擎有多少個引擎在這就有多少個目錄

  Localhost 對應的是站點有多少個站點就有多少個目錄這個目錄中又有多個xml配置文件每個配置文件都對應一個Web應用程序

  在xml文件中寫入<Context docBase=e:\test>元素虛擬目錄名字屬性(path)不用寫虛擬目錄名就是這個xml的文件名

  方法三在tomcat中操作成***中不推薦使用但是也可以根據serverxml配置文件中的引擎站點web應用程序結構手工寫入目錄文件結構

   將項目打成war包

  打成包的項目放到webapps下面不用解壓tomcat會將項目自動解壓展開

  打包後會自動生成METAINF文件夾

  進入要打包的文件夾jar cvf webcontentwar (點代表當前目錄)

  或者不進入文件夾jar cvf webcontentwar C webcontent

  C 代表改變目錄

   conf/webxml通用配置文件

  為所有的web應用程序進行配置通用配置文件

  配置默認網頁(歡迎頁面)

  <welcomefilelist>

  <welcomefile>l</welcomefile>

  <welcomefile></welcomefile>

  <welcomefile>indexjsp</welcomefile>

  </welcomefilelist>

  如果沒找到對應的網頁則打印文件列表報錯

   批處理實例

  batch 批@echo hehe 加@的作用是不會讓echo命令顯示出來或者直接設置@echo off 整個批處理文件就不會顯示命令變量要用雙引號引起來 %OS%

   連接器

  https協議支持加密默認端口號為

  要支持https協議需要加入連接器

  在tomcat/conf/serverxml中存在一個元素(默認被注釋掉)

  <Connector port= protocol=HTTP/ SSLEnabled=true

  maxThreads= scheme=https secure=true

  clientAuth=false sslProtocol=TLS />

  必須為這個連接器申請一個證書這個證書由專門的機構頒發審核

  產生一個證書用JAVA_HOME/bin/keytool命令查幫助文檔再將這個加入到連接器<Connector>元素

   對稱加密和非對稱加密

  對稱加密 加密密碼和解秘密密碼相同

  非對稱加密加密密碼和解密密碼不同共鑰加密的數據可以被私鑰解密私鑰加密的數據也能被公鑰解密發鑰的必須是個權威機構(CA)

  根據要傳輸的數據計算出一個位的bit的一個數值只要內容被改動一點這個值就會被改變(很大的改變)

  數字簽名數字證書

   SSL會話原理

  將密碼進行非對稱加密SSL會話過程中的加密處理是浏覽器與服務器自動完成的


From:http://tw.wingwit.com/Article/program/Java/ky/201311/28224.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.