JavaWeb學習 第1章 Web開發工具配置和使用(下)Tomcat的配置

來源:互聯網
上載者:User

註:還有一點問題,這個版本的 context.xml 檔案怎麼都無法修改,它說檔案是唯讀,但是屬性中並非如此,所以,對於該檔案的那個

raloadable="true" ,沒有進行修改

PS:點擊 Tomcat 檔案夾下 的 startup.bat 是啟動 Tomcat 伺服器的一種方式,但是要注意命令提示字元中顯示的資訊,它可能說出了什麼錯誤,而且很嚴重,

但是它並沒有影響我們開啟 歡迎介面,這種情況下並不能將問題忽略,例如我剛開始的那個版本就要很多問題,但是沒什麼影響,而且看視頻,那個老師好像也有問題,

所以就導致了這麼多悲劇啊!

以下是問題解決過程中找到的一些還蠻有用的文章,留著以後方便解決問題,呵呵呵

相關內容的引文

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

引用地址:http://blog.csdn.net/xttgx/archive/2009/11/15/4813044.aspx   CSDN部落格

關於tomcat啟動後馬上又自動關閉的問題

今天費了一點時間找我tomcat在myeclipse裡面能啟動,而我直接點擊tomcat檔案夾裡面的tomcat5.exe或satartup.bat卻無法啟動的原因。

     從tomcat日誌裡面看到的錯誤是:[2009-11-15 16:02:05] [924  prunsrv.c] [error] Failed creating java ;

[2009-11-15 16:02:05] [1179 prunsrv.c] [error] ServiceStart returned 1。把這兩句話剪貼出來Google,答案是說要把一個什麼

mvcr71.ddl檔案放到windows的system32裡面,我把所說的檔案下下來,然後複製進去,提示裡面有這個檔案,而且修改日期我這個更新,於是我放棄了複製.

      有人說是jdk的原因,myeclipse能啟動是因為myeclipse用的是內建的jre,jdk的jre可能有問題,我試著備份了jdk裡面的jre檔案,

然後把myeclipse的jre檔案複製覆蓋了jdk裡面的jre,運行tomcat的startup還是不行。

     於是乎,再看看另外的留言,借來一點靈感:dos--cmd--d:--cd tomcat/bin--startup.bat,斷行符號之後出現這樣的提示:
        Neither the JAVA_HOME nor the JRE_HOME environment variable is defined 
        At least one of these environment variable is needed to run this program

       帶著這兩個問題Google,得到了一條有用的訊息:JAVA_HOME 是特殊的變數.大多數情況是不需要的,但是如果你裝一些伺服器軟體或者開發工具,比如tomcat或者ant等等,就需要了。

       於是乎,我配置了一下JAVA_HOME的環境變數,結果再運行startup.bat,yeah!ok!

        在此附上jdk的環境變數配置方法:

變數名JAVA_HOME 賦值“<JDK安裝路徑目錄>”,如我的是“C:\JDK;”;
        變數名CLASSPATH  賦值“.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;”;
          (*注意,%JAVA_HOME%可以由<JDK安裝路徑目錄>替換。其實%JAVA_HOME%就是上面的變數。)
        變數PATH賦值“%JAVA_HOME%\bin;”;

例如: 這是jdk的位置:D:\jdk1.5.0 
            配置環境變數: 
           JAVA_HOME:   D:\jdk1.5.0 
           PATH:   D:\jdk1.5.0\bin; 
           CLASSPATH:   .;D:\jdk1.5.0\lib\tools.jar;

看了之後,我修改了我的 Java 環境,但還是沒有成功! 

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

引文地址:http://www.oelandau.com/viewnews-5648

問題如下:
安裝上tomcat後,啟動可以成功,Welcome頁面可以進入,之後關閉tomcat,在MyEclipse->service中配置好tomcat後可以啟動,

再啟動電腦上的tomcat就會遇見啟動後自動關閉的問題了。
解決措施如下:
MyEclipse->service啟動tomcat後查看連接埠就會發現javaw會佔用8080,8005,8009連接埠,以至於tomcat預設的連接埠全都被佔用,

電腦上的tomcat就無法啟用了,處理措施就是把tomcat安裝檔案下conf中的server.xml中的連接埠8080,8005,8009全都改掉(如改為8006,8007,8008),

這樣子啟動tomcat問題就解決了,查看連接埠8080,8005,8009,8006,8007,8008都處於listening狀態,全無關tomcat與jdk版本衝突問題,

之前用MyEclipse7.0時並沒有遇見此問題,此次用MyEclipse8.5,MyEclipse6.0都遇見此問題了,記於此處以備後用!
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

引文地址:http://blog.csdn.net/hansoft/archive/2006/04/01/647060.aspx   CSDN 部落格

運行多個tomcat執行個體兩法

如果需要把一個alpha版的web應用部署到一台機器上的tomcat中作測試,而這台機器上的tomcat同時還運行著其他的一些比較重要的web應用,你會怎麼做?

顯然不能簡單地把它和重要的web應用放在一起,那樣的話alpha版應用的崩潰會同時使其他應用也不能工作,因為它們是運行在同一個JVM上的。

這時應該安裝另外一份tomcat,使alpha版的應用在該tomcat裡運行,這時需要修改conf/server.xml使兩個tomcat佔用的連接埠不相同,

在預設配置的情況下,tomcat使用了三個連接埠:

  • shutdown連接埠: <Server port="8005" shutdown="SHUTDOWN">
  • http連接埠:<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" />
  • AJP連接埠:<Connector port="8009" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

這樣,不僅兩個tomcat裡的應用不會互相影響,而且兩個tomcat程式也可以分別升級。但是如果我們希望兩組web應用分別運行在不同的JVM上,

但是使用的tomcat版本又必須一致,這種方法就稍顯麻煩,因為如果要升級tomcat版本就必須同時升級兩個。其實tomcat是可以在一個程式版本上運行多個instance的:

tomcat有個環境變數CATALINA_BASE,用來指定一個目錄,tomcat是依據該目錄的內容來實現大部分的啟動工作的,包括我們最關心的web app的載入,該目錄由conf,logs,shared,webapps,work,temp子目錄組成。這樣,為每個instance建立一個目錄,配置好其內容(注意同樣要修改server.xml使連接埠不一樣),

然後在啟動每個instance時使CATALLINA_BASE指向該instance對應的目錄,就能實現啟動多個instance的目的。可以在instance對應的目錄下寫一個startup.bat來完成

該instance的啟動工作,該指令碼使用指令碼所在的目錄作為CATALINA_BASE,可以在從任何目錄下運行,並且保留了tomcat啟動指令碼的參數: 

@echo off   set CMD_LINE_ARGS=   :setArgs   if ""%1""=="""" goto doneSetArgs   set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 

shift   goto setArgs   :doneSetArgs      set EXECUTABLE=%CATALINA_HOME%\bin\startup.bat   set CATALINA_BASE=%~dp0  

call "EXECUTABLE" %CMD_LINE_ARGS%


是個高手寫的,寫的很好,可是就是看不懂啊,簡單地說就是改連接埠號碼,下面就清楚了

-------------------------------------------------------------------------------------------------------------------------------------------------------------------
引文地址:http://blog.csdn.net/jiaxy917/archive/2008/10/15/3075713.aspx    CSDN部落格

兩個tomcat都用的是zip檔案

安裝第二個Tomcat完成後,到安裝目錄下的conf子目錄中開啟server.xml檔案,尋找以下三處:

(1) 修改http訪問連接埠(預設為8080連接埠)          <Connector  className="org.apache.coyote.tomcat4.CoyoteConnector"    port="8080" 
                                minProcessors="5"    maxProcessors="75" 
                                enableLookups="true"    redirectPort="8443" 
                                acceptCount="100"    debug="0"    connectionTimeout="20000" 
                                useURIValidationHack="false"    disableUploadTimeout="true"  />
(大概在86行左右)將8080修改為第一個tomcat不在使用的連接埠號碼。此處所設的連接埠號碼即是以後訪問web時所用的連接埠號碼。
(2) 修改Shutdown連接埠(預設為8005連接埠)    <Server port="8005" shutdown="SHUTDOWN" debug="0">
(大概在13行左右)將8005修改為沒有在使用的連接埠號碼,例如8095   
(3) 修改JVM啟動連接埠(預設為8009連接埠)            < Connector className ="org.apache.coyote.tomcat4.CoyoteConnector"   
                                port ="8009"    minProcessors ="5"    maxProcessors ="75"   
                                enableLookups ="true"    redirectPort ="8443"   
                                acceptCount ="10"    debug ="0"    connectionTimeout ="20000" 
                                useURIValidationHack ="false"   
                                protocolHandlerClassName ="org.apache.jk.server.JkCoyoteHandler" />
(大概在107行左右)將8009修改為沒有在使用的連接埠號碼,例如8099

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.