日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

webServer tomcat5/tomcat6/tomcat7诠释

發布時間:2024/4/14 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 webServer tomcat5/tomcat6/tomcat7诠释 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Jakata tomcat5

http://mirrors.ccs.neu.edu/Apache/dist/tomcat/tomcat-5/

http://archive.apache.org/dist/jakarta/tomcat-5/?

http://tomcat.apache.org/

http://labs.xiaonei.com/ 由校內網維護的Apache下載鏡像

http://tomcat.apache.org/download-55.cgi

http://apache.mirror.phpchina.com/tomcat/tomcat-5/v5.5.26/bin/apache-tomcat-5.5.26.zip

http://apache.mirror.phpchina.com/tomcat/tomcat-5/v5.5.26/bin/apache-tomcat-5.5.26-admin.zip

http://tomcat.apache.org/download-60.cgi

http://apache.mirror.phpchina.com/tomcat/tomcat-6/v6.0.16/bin/apache-tomcat-6.0.16.zip

http://tomcat.apache.org/download-native.cgi

http://apache.mirror.phpchina.com/tomcat/tomcat-connectors/native/1.1.14/binaries/win32/

http://apache.mirror.phpchina.com/tomcat/tomcat-connectors/native/1.1.16/binaries/win32/

http://tomcat.apache.org/download-connectors.cgi

http://apache.mirror.phpchina.com/tomcat/tomcat-connectors/

http://apache.mirror.phpchina.com/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.26/

Tomcat5 添加管理控制臺

http://localhost:8080/admin

AdministrationTomcat's administration web application is no longer installed by default. Download and install the "admin" package to use it.

添加 Tomcat Administration Username

D:\Program Files\Apache Software Foundation\apache-tomcat-5.5.28 \conf\tomcat-users.xml

Xml代碼
  • <?xml?version='1.0'?encoding='utf-8'?>???
  • <tomcat-users>???
  • <role?rolename="tomcat"/>???
  • <role?rolename="role1"/>???
  • <user?username="tomcat"?password="tomcat"?roles="tomcat"/>???
  • <user?username="both"?password="tomcat"?roles="tomcat,role1"/>?<user?username="role1"?password="tomcat"?roles="role1"/>???
  • <!--add?admin?console?here?-->???
  • <role?rolename="manager"/>???
  • <role?rolename="admin"/>???
  • <user?username="admin"?password=""?roles="admin,manager"/>?<!--add?admin?console?here?-->???
  • </tomcat-users>?
  • 添加 Tomcat Administration Application Configuration

    D:\Program Files\Apache Software Foundation\apache-tomcat-5.5.28\conf\Catalina\localhost\admin.xml

    Xml代碼
  • <?xml?version="1.0"?encoding="UTF-8"?>???
  • <!--?Licensed?to?the?Apache?Software?Foundation?(ASF)?under?one?or?more?contributor?license?agreements.?See?the?NOTICE?file?distributed?with?this?work?for?additional?information?regarding?copyright?ownership.?The?ASF?licenses?this?file?to?You?under?the?Apache?License,?Version?2.0?(the?"License");?you?may?not?use?this?file?except?in?compliance?with?the?License.?You?may?obtain?a?copy?of?the?License?at?http://www.apache.org/licenses/LICENSE-2.0?Unless?required?by?applicable?law?or?agreed?to?in?writing,?software?distributed?under?the?License?is?distributed?on?an?"AS?IS"?BASIS,?WITHOUT?WARRANTIES?OR?CONDITIONS?OF?ANY?KIND,?either?express?or?implied.?See?the?License?for?the?specific?language?governing?permissions?and?limitations?under?the?License.?-->???
  • <!--?Context?configuration?file?for?the?Tomcat?Administration?Web?App?$Id:?admin.xml?565211?2007-08-13?00:09:38Z?markt?$?-->???
  • <Context?docBase="${catalina.home}/server/webapps/admin"?privileged="true"?antiResourceLocking="false"?antiJARLocking="false">???
  • <!--?Uncomment?this?Valve?to?limit?access?to?the?Admin?app?to?localhost?for?obvious?security?reasons.?Allow?may?be?a?comma-separated?list?of?hosts?(or?even?regular?expressions).?<Valve?className="org.apache.catalina.valves.RemoteAddrValve"?allow="127.0.0.1"/>?-->???
  • </Context>???
  • ?

    ?

    添加 Tomcat Administration Application

    http://labs.xiaonei.com/apache-mirror/tomcat/tomcat-5/v5.5.28/bin/apache-tomcat-5.5.28-admin.zip

    D:\Program Files\Apache Software Foundation\apache-tomcat-5.5.28\server\webapps\admin

    Tomcat6 配置 Tomcat?Manager

    http://localhost:8080/manager

    401 Unauthorized

    You are not authorized to view this page. If you have not changed any configuration files, please examine the file conf/tomcat-users.xml in your installation. That file will contain the credentials to let you use this webapp.

    You will need to add manager role to the config file listed above. For example:

    <role rolename="manager"/> <user username="tomcat" password="s3cret" roles="manager"/>

    For more information - please see the Manager App HOW-TO .

    修改文件:D:\Program Files\apache-tomcat-6.0.20\conf\tomcat-users.xml

    Xml代碼 Xml代碼?
  • <?xml?version='1.0'?encoding='utf-8'?>???
  • <tomcat-users>?<role?rolename="manager"/>???
  • <role?rolename="admin"/>???
  • <user?username="admin"?password=""?roles="admin,manager"/>?</tomcat-users>?
  • Tomcat 7 添加配置web管理控制臺 ,注意下載版本32/64, 這個也適用于apache-tomcat-6.0.32。

    http://hi.baidu.com/everything%5Fis%5Ftruth/blog/item/cc115910616ecad5a6ef3f07.html

    修改文件 D:\soft\apache-tomcat-7.0.22\conf\ tomcat-users.xml

    Java代碼
  • <role?rolename="admin-gui"/>??
  • <role?rolename="admin-script"/>??
  • <role?rolename="manager-gui"/>??
  • <role?rolename="manager-script"/>??
  • <role?rolename="manager-jmx"/>??
  • <role?rolename="manager-status"/>??
  • <user?username="tomcat"?password="s3cret"?roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>?
  • Tomcat5 外引項目配置

    文件:

    D:\tomcat5\conf\Catalina\localhost\workorder .xml

    內容:

    < Context ? path = "/workorder " ? docBase = "D:\workspace\order\WebRoot" ? reloadable = "true"/ >

    路徑:http://localhost:8585/workorder

    Tomcat 5 查看并發訪問量

    http://localhost:8585/manager/status/

    http://localhost:8585/manager/status/all

    http://192.168.157.87:8080/manager/status?XML=true

    http8585

    Max threads: 150 Min spare threads: 0 Max spare threads: 0 Current thread count: 3 Current thread busy: 1 Keeped alive sockets count: 0
    Max processing time: 265 ms Processing time: 0.451 s Request count: 4 Error count: 0 Bytes received: 0.00 MB Bytes sent: 0.06 MB

    Tomcat 啟動分析、啟動腳本、類載入器

    啟動分析 :http://docs.huihoo.com/apache/tomcat/heavyz/01-startup.html

    啟動腳本:http://docs.huihoo.com/apache/tomcat/heavyz/02-catalina.sh .html

    類載入器:http://docs.huihoo.com/apache/tomcat/heavyz/03-classloader.html

    Tomcat 6 安裝成Windows服務

    http://guyongpeng.iteye.com/blog/176914

    安裝tomcat服務

    D:\Program Files\apache-tomcat-6.0.20\bin>service.bat install
    Installing the service 'Tomcat6' ...
    Using CATALINA_HOME:??? D:\Program Files\apache-tomcat-6.0.20
    Using CATALINA_BASE:??? D:\Program Files\apache-tomcat-6.0.20
    Using JAVA_HOME:??????? D:\Program Files\jdk1.6.0_16
    Using JVM:????????????? D:\Program Files\jdk1.6.0_16\jre\bin\server\jvm.dll
    The service 'Tomcat6' has been installed.

    ?

    D:\Program Files\apache-tomcat-6.0.20\bin>net start Tomcat6
    Apache Tomcat 6 服務正在啟動 ..
    Apache Tomcat 6 服務已經啟動成功。

    D:\Program Files\apache-tomcat-6.0.20\bin>service.bat install lindows
    Installing the service 'lindows' ...
    Using CATALINA_HOME:??? D:\Program Files\apache-tomcat-6.0.20
    Using CATALINA_BASE:??? D:\Program Files\apache-tomcat-6.0.20
    Using JAVA_HOME:??????? D:\Program Files\jdk1.6.0_16
    Using JVM:????????????? D:\Program Files\jdk1.6.0_16\jre\bin\server\jvm.dll
    The service 'lindows' has been installed.

    D:\Program Files\apache-tomcat-6.0.20\bin>net start lindows
    Apache Tomcat lindows 服務正在啟動 .
    Apache Tomcat lindows 服務已經啟動成功。

    卸載tomcat服務

    D:\Program Files\apache-tomcat-6.0.20\bin>service.bat remove

    D:\Program Files\apache-tomcat-6.0.20\bin>service.bat remove tomcat6

    一般性的,若需要將通用的java應用添加為windows服務,可以使用wrapper工具

    Tomcat ?Cluster?服務器集群

    http://blog.chinaunix.net/u1/34716/showart_276614.html

    http://server.chinabyte.com/392/2632892.shtml

    http://albertsong.iteye.com/blog/271235

    apache跟tomcat做集群session不同步問題

    http://www.iteye.com/topic/21449

    @robbin

    1、tomcat實例要在response的時候標示自己,通過server.xml里面的jvmRoute參數
    2、apache要從request里面拿出來route信息,從哪個HEAD里面拿?通過stickysession參數來指定

    3、apache怎么轉發?通過route參數來指定。
    最后想提醒一點:apache2.2的load balance的session sticky性能并不好,因為他這是在七層協議級別進行請求的分發。我測試的結果表明,并不很穩定。 對于tomcat群集來說,最好就是SNA(Share Nothing Architecture),

    應用程序壓根就不用session,這樣才能無限擴展。

    @codeutil

    mod_jk這個早就該淘汰了, 用modajp

    結合Apache和Tomcat實現集群和負載均衡

    http://hqjiang.iteye.com/blog/261107

    本文基本參考自?輕松實現Apache,Tomcat集群和負載均衡 ? ,經由實操經歷記錄而成,碰到些出入,以及個別地方依據個人的習慣,所以在一定程度上未能保持原文的完整性,還望原著者海涵。

    因原文中有較多的貼圖,如若各位讀者一時不想親自動手而直想看到配置效果,可查看原文。

    一:軟件環境 ?
    ?? 1. Apache: apache 2.0.55 (由http://httpd.apache.org/ ? 進入下載)(點擊下載apache 2.0.55 ? )
    ?? 2. Tomcat: Tomcat 5.5.25 (由http://tomcat.apache.org/ ? 進入下載)(點擊下載Tomcat 5.5.25 zip版 ? )
    ?? 3. mod_jk: 在頁面?http://tomcat.apache.org/ ? ?? Download 標題下找到 Tomcat Connectors 鏈接進入(?點擊下載mod_jk-apache-2.0.55.so ? ),看起來像是個Unix/Linux下的動態庫,實際應是個Win32 的 DLL 動態庫,大概是為保持不同平臺配置的一致性,才用了這個擴展名。

    二:負載均衡

    三:配置集群

    nginx+tomcat集群負載均衡(實現session復制)

    http://blog.chinaunix.net/u2/83793/showart_1354266.html

    參考鏈接:
    Linux操作系統下配置Tomcat多個實例解析
    http://linux.chinaitlab.com/administer/747294.html
    運行多個tomcat實例兩法
    http://blog.csdn.net/hansoft/archive/2006/04/01/647060.aspx
    apache下多個tomcat實例的實現
    http://blog.chinaunix.net/u/2914/showart_1162420.html
    Apache+tomcat虛擬主機多實例的配置
    http://hi.baidu.com/xerik/blog/item/ab69b1513a44ea8e8d54304b.html

    Tomcat 6 數據源與連接池配置

    JNDI數據源的使用

    http://weixuezheng1986-163-com.iteye.com/blog/561305

    http://www.blogjava.net/ec2008/archive/2008/07/19/216063.html

    project:test

    Driver path:

    D:\workspace\test\WebRoot\WEB-INF\lib\ojdbc14.10g.jar

    Datasource config

    D:\tomcat6.0\conf\server.xml

    <GlobalNamingResources>

    <!-- 其中將數據源參數配置在tomcat全局連接池中-->

    ? <Resource
    ??? name="jdbc/oracle "
    ??? type="javax.sql.DataSource"
    ??? maxActive="4"
    ??? maxIdle="2"
    ??? username="scott"
    ??? maxWait="5000"
    ??? driverClassName="oracle.jdbc.driver.OracleDriver"
    ??? validationQuery="select 1 from dual"
    ??? password="tiger"
    ??? url="jdbc:oracle:thin:@localhost:1521:orcl"/>

    </GlobalNamingResources>

    JNDI config

    D:\workspace\test\WebRoot\WEB-INF\web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee "
    ?xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://java.sun.com/xml/ns/javaee ?? http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd ">

    ?<!--?其中加入應用JNDI配置 -->

    ?<resource-ref>
    ? <description>DB?Connection </description>

    ?? <!-- JNDI 命名-->
    ? <res-ref-name>jdbc/oracle </res-ref-name>
    ? <res-type>javax.sql.DataSource</res-type>
    ? <res-auth>Application </res-auth>
    ?</resource-ref>

    ?<resource-ref>
    ? <description>DB?Connection </description>
    ? <res-ref-name>jdbc/oracle </res-ref-name>
    ? <res-type>javax.sql.DataSource</res-type>
    ? <res-auth>Container </res-auth>
    ?</resource-ref>

    </web-app>

    Tomcat 6 數據源與連接池配置 方法二

    project:test

    Driver path:

    D:\workspace\test\WebRoot\WEB-INF\lib\ojdbc14.10g.jar

    Datasource config

    D:\tomcat6.0\conf\Catalina\localhost\test.xml

    D:\tomcat6.0\conf \context.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <Context path="/test " docBase="D:\workspace\test\WebRoot " reloadable="true">

    <!-- 其中將數據源參數配置在tomcat局部連接池中-->
    ??<Resource name="jdbc/oracle"
    ????? type="javax.sql.DataSource"
    ????? username="scott"
    ????? password="tiger"
    ????? driverClassName="oracle.jdbc.OracleDriver"

    ???? ?validationQuery="select 1 from dual"
    ????? maxIdle="2"
    ????? maxWait="5000"
    ????? url="jdbc:oracle:thin:@localhost:1521:orcl"
    ????? maxActive="4"/>

    </Context>

    page test ok

    D:\workspace\test\WebRoot\index.jsp

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%
    ?String path = request.getContextPath();
    ?String basePath = request.getScheme() + "://"
    ???+ request.getServerName() + ":" + request.getServerPort()
    ???+ path + "/";
    %>

    <%@ page import="java.sql.*"%>
    <%@ page import="javax.naming.*"%>
    <%@ page import="javax.sql.*"%>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    ?<head>
    ??<base href="<%=basePath%>">

    ??<title>tomcat datasource test</title>
    ??<meta http-equiv="pragma" content="no-cache">
    ??<meta http-equiv="cache-control" content="no-cache">
    ??<meta http-equiv="expires" content="0">
    ??<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    ??<meta http-equiv="description" content="This is my page">
    ??<!--
    ?<link rel="stylesheet" type="text/css" href="styles.css">
    ?-->
    ?</head>

    ?<body>
    ??<%
    ???Context initContext = new InitialContext();
    ???//java:/comp/env 或? java:/comp/env/ 固定寫法
    ???Context envContext = (Context) initContext
    ?????.lookup("java:/comp/env/");
    ???DataSource ds = (DataSource) envContext.lookup("jdbc/oracle");
    ???//方法二
    ???//DataSource ds = (DataSource) initContext.lookup("java:/comp/env/jdbc/oracle");

    ???Connection conn = ds.getConnection();
    ???Statement stmt = conn.createStatement();
    ???ResultSet rs = stmt.executeQuery("select * from dept");

    ???out.println("結果集是否為空:" + (rs == null) + "<p>");

    ???while (rs.next()) {
    ????String deptno = rs.getString(1);
    ????String dname = rs.getString(2);
    ????String loc = rs.getString(3);
    ????out.println("\t部門編號:" + deptno + "\t部門名稱:" + dname + "??? 地點:"
    ??????+ "\t" + loc + "<p>");
    ???}
    ???out.println("finally");
    ???try {
    ????if (rs != null) {
    ?????rs.close();
    ????}
    ????if (stmt != null) {
    ?????stmt.close();
    ????}
    ????if (conn != null) {
    ?????conn.close();
    ????}
    ???} catch (SQLException e2) {
    ????e2.printStackTrace();
    ???}
    ??%>
    ?</body>
    </html>

    tomcat 虛擬主機配置

    http://absolute007.iteye.com/blog/175902

    第一步、

    在tomcat/conf/server.xml中添加
    ? <Host name="jsp " debug="0" appBase="E:\My Documents\myeclipse_workspace">
    ????????????? <Context path="" docBase="." debug="0"/>
    ?????? </Host>
    第二步、
    對于windows XP:
    \WINDOWS\system32\drivers\etc\

    中找到hosts這個文件,此文件沒有擴展名,可以手工創建。后面添加
    127.0.0.1?????? localhost
    127.0.0.1??????jsp

    ?第三步:

    瀏覽器中輸入

    http://jsp:8008/jspsqltest/WebRoot/test.jsp

    一切完成

    tomcat5 優化配置

    http://liliugen.iteye.com/blog/265422

    http://liliugen.iteye.com/blog/265506

    http://japi.iteye.com/blog/261586

    java.lang.OutOfMemoryError: PermGen space

    tomcat 最大連接數配置

    http://maqianli.iteye.com/blog/298619

    在server.xml中有配置的。 ??
    <Connector ? port="8080" ??
    ? ? maxThreads="150" ??
    ? ? minSpareThreads="25" ??
    ? ? maxSpareThreads="75" ??
    ? ? acceptCount="100" ??
    ? ? /> ??
    maxThreads="150" ????? 表示最多同時處理150個連接 ??
    minSpareThreads="25" ? 表示即使沒有人使用也開這么多空線程等待 ??
    maxSpareThreads="75" ? 表示如果最多可以空75個線程,例如某時刻有80人訪問,之后沒有人訪問了,則tomcat不會保留80個空線程,而是關閉5個空的。 ??
    ??
    acceptCount="100" ???? 當同時連接的人數達到maxThreads時,還可以接收排隊的連接,超過這個連接的則直接返回拒絕連

    接。

    ?

    Tomcat集群的三種負載均衡方式優缺點對照。

    http://wangdei.iteye.com/blog/205947 1.使用DNS輪詢. 2.使用Apache R-proxy方式。 3.使用Apache mod_jk方式. DNS輪詢的缺點是,當集群中某臺服務器停止之后,用戶由于dns緩存的緣故,便無法訪問服務, 必須等到dns解析更新,或者這臺服務器重新啟動。 還有就是必須把集群中的所有服務端口暴露給外界,沒有用apache做前置代理的方式安全, 并且占用大量公網IP地址,而且tomcat還要負責處理靜態網頁資源,影響效率。 優點是集群配置最簡單,dns設置也非常簡單。 R-proxy的缺點是,當其中一臺tomcat停止運行的時候,apache仍然會轉發請求過去,導致502網關錯誤。 但是只要服務器再啟動就不存在這個問題。 mod_jk方式的優點是,Apache 會自動檢測到停止掉的tomcat,然后不再發請求過去。 缺點就是,當停止掉的tomcat服務器再次啟動的時候,Apache檢測不到,仍然不會轉發請求過去。 R-proxy和mod_jk的共同優點是.可以只將Apache置于公網,節省公網IP地址資源。 可以通過設置來實現Apache專門負責處理靜態網頁,讓Tomcat專門負責處理jsp和servlet等動態請求。 共同缺點是:如果前置Apache代理服務器停止運行,所有集群服務將無法對外提供。 R-proxy和mod_jk對靜態頁面請求的處理,都可以通設置來選取一個盡可能優化的效果。 這三種方式對實現最佳負載均衡都有一定不足,mod_jk相對好些,可以通過設置lbfactor參數來分配請求任務。 所有這些在實際使用中都應該根據具體情況來選擇。

    本地查看遠程端口8080是否開放
    C:\Documents and Settings\Lindows>telnet 192.168.118.168 8000

    tomcat 8080 端口沖突解決 方法一

    http://inshect.iteye.com/blog/343057

    dos 輸入 ,并查看沖突端口號對應的PID(系統進程號)

    C:\Documents and Settings\Lindows>netstat -help

    C:\Documents and Settings\Lindows>netstat -b

    C:\Documents and Settings\Lindows>netstat -ano > c:\netstat.txt

    看看占用0.0.0:80端口的PID是多少
    在“任務管理器”中查找對應PID的程序。
    如果任務管理器的進程頁中看不到PID欄,

    則在任務管理器的菜單〖查看〗〖選擇列〗中選擇一下。刪掉PID對應的程序即可。

    tomcat 8080 端口沖突解決 方法二

    windows 命令行下 簡單好用的查看端口占用情況的方法
    http://freeman983.iteye.com/blog/349971

    在windows命令行窗口下執行:
    C:\>netstat -ano | findstr "8080"

    C:\>netstat -ano | findstr 8080
    TCP??? 127.0.0.1:4444???????? 0.0.0.0:0????????????? LISTENING?????? 2434
    由上面得知,端口被進程號為2434的進程占用,繼續執行下面命令:
    C:\>tasklist | findstr "2434"

    C:\>tasklist | findstr 2434
    javaw.exe???????????????????? 2434 Console???????????????? 0???? 16,064 K
    c:\>taskkill? /f /im javaw.exe

    Apache HTTP Server 與 Tomcat 的三種連接方式介紹

    劉 冬 (javayou@gmail.com ), 開發工程師,  2007 年 1 月 15 日

    http://www.ibm.com/developerworks/cn/opensource/os-lo-apache-tomcat/index.html

    Tomcat SSL OpenSSL 443

    終于搞定了Windows下Tomcat Web服務器的SSL配置

    http://albertsong.iteye.com/blog/198344

    http://www.myssl.cn/guide/install_openssl.asp

    ?

    Tomcat6配置使用SSL雙向認證 ?

    http://www.openssl.cn/

    http://www.openssl.org/

    http://baike.baidu.com/view/300712.htm

    http://tech.techweb.com.cn/thread-226423-1-2.html

    使用OpenSSL API進行安全編程

    http://www.ibm.com/developerworks/cn/linux/l-openssl.html

    ?

    openssl生成pem建立CA

    http://ideage.iteye.com/blog/356915

    文章一:http://blog.chinaunix.net/u/11234/showart_290705.html

    文章二:http://blog.chinaunix.net/u/11234/showart_291316.html

    openssl簡明使用手冊

    http://firefly.iteye.com/blog/177544

    簡要介紹了使用openssl來生成CA證書、申請證書、頒發證書以及撤銷證書的過程?
    1. 首先建立CA密鑰:?
    openssl genrsa -des3 -out ca.key 1024 (創建密鑰)?
    chmod 400 ca.key (修改權限為僅root能訪問)?
    openssl rsa -noout -text -in ca.key (查看創建的證書)?
    2. 利用CA密鑰自簽署CA證書:?
    openssl req -config openssl.cnf -new -x509 -days 3650 -key ca.key -out ca.crt?
    chmod 400 ca.crt (修改權限為僅root能訪問)?
    openssl x509 -noout -text -in ca.crt (查看創建的證書)?
    3. 創建服務器證書簽署申請:?
    openssl genrsa -des3 -out client.key 1024?
    chmod 400 client.key (修改權限為僅root能訪問)?
    openssl rsa -noout -text -in client.key (查看創建的證書)?
    4. 利用證書簽署申請生成請求:?
    openssl req -config openssl_client.cnf -new -key client.key -out client.csr?
    openssl req -noout -text -in client.csr (查看創建的請求)?
    5.進行證書簽署:?
    這時候需要先設置一下openssl的配置文件。?
    modify openssl.cnf并根據這個配置文件創建相應的目錄和文件。?
    在創建了serial文件之后,還需要添加當前的八進制的serial number,如:01?
    然后執行:?
    openssl ca -config openssl_client.cnf -keyfile ca.key -cert ca.crt -in client.csr -out client.pem -days 1095?
    這個certificate是BASE64形式的,要轉成PKCS12才能裝到IE,/NETSCAPE上.所以還要:?
    openssl pkcs12 -export -in client.pem -inkey client.key -out clinet.pfx?
    6.證書撤銷:?
    openssl ca -keyfile ca.key -cert ca.crt -revoke client.pem?
    這時數據庫被更新證書被標記上撤銷的標志,需要生成新的證書撤銷列表:?
    openssl ca -gencrl -keyfile ca.key -cert ca.crt -out crl/test.crl?
    查看證書撤銷列表:?
    openssl crl -noout -text -in crl/test.crl?
    證書撤銷列表文件要在WEB站點上可以使用,必須將crldays或crlhours和crlexts加到證書中:?
    openssl ca -gencrl -config /etc/openssl.cnf -crldays 7 -crlexts crl_ext -out crl/sopac-ca.crl?

    當虛擬目錄不是在80端口且打開ssl時出錯 ssl_error_rx_record_too_long?

    【錯誤】如果網站URL是:http://ip:port/ 時,如果再在網站上啟用ssl,在瀏覽器上訪問:https://ip:port/ 將會收到如下錯誤:SSL 接收到一個超出最大準許長度的記錄。錯誤碼: ssl_error_rx_record_too_long

    【原因】:

    ssl協議默認是在web server的443端口監聽,所以,訪問ssl會產生如下形式的訪問:http://ip:443/ 這樣將與http://ip:port/ 里的port沖突。

    【所以】:對https訪問,web server會自己定位到導用的了ssl的網站(啟用了ssql ,此網上就自動在443上監聽)上。

    解決https://ip:port/ 的訪問可以省略port,如:對https://ip/

    ?

    http://msn.ynet.com/view.jsp?oid=48723368+

    javax.servlet.ServletException: Node with number 0 does not exist.

    http://msn.sports.ynet.com/2008/view.jsp?oid=42362690

    javax.servlet.ServletException: Node with number 42362690 does not exist.

    ?

    【問題】

    2009-3-12 15:06:31 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
    嚴重: An incompatible version 1.1.1 of the Apache Tomcat Native library is installed, while Tomcat requires version 1.1.3
    2009-3-12 15:06:31 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
    信息: An older version 1.1.1 of the Apache Tomcat Native library is installed, while Tomcat recommends version greater than 1.1.4
    2009-3-12 15:06:31 org.apache.coyote.http11.Http11AprProtocol init

    解決

    http://tomcat.heanet.ie/native/1.1.8/binaries/win32/ 

    http://topic.csdn.net/u/20080605/14/68376d57-bb1b-4b45-a489-13aa722f2e67.html

    下載 http://tomcat.heanet.ie/native/1.1.8/binaries/win32/tcnative-1.dll? 目前版本1.1.8
    1、把文件放入C:\WINDOWS\system32里。或D:\tomcat5.5\bin下,我就是這樣解決的。
    2、把它放在環境變量path中所指向的jdk的bin的目錄下,例如,放在C: Javajdk1.5.0_09bin目錄下?

    Apache Tomcat Log

    tomcat catalina.out日志切割每天生成一個文件

    http://www.sbear.cn/archives/367

    tomcat的catalina.out一直增長,太大了會造成tomcat異常,

    需要對其日志進行切割每天生成一個文件,并且刪除7天前的文件。

    #!/bin/bash cd `dirname $0` d=`date +%Y%m%d` d7=`date -d'7 day ago' +%Y%m%d`? cd ../logs/ cp catalina.out catalina.out.$ozvdkddzhkzd echo "" > catalina.out rm -rf catalina.out.${d7}

    放到tomcat的bin目錄中,然后crontab每天執行

    Tomcat APR (Apache Portable Runtime)

    ref

    http://redalx.iteye.com/blog/162246

    http://blog.csdn.net/tingya/archive/2006/04/15/664304.aspx

    apr說白了就是如何在Tomcat中使用JNI的方式來讀取文件以及進行網絡傳輸, ?提高tomcat ?的IO效率。

    apr可以大大提升Tomcat對靜態文件的處理性能,同時如果你使用了HTTPS方式傳輸的話,也可以提升SSL的處理性能。

    doc

    http://apr ?.apache.org/

    http://tomcat.apache.org/tomcat-5.5-doc/apr.html

    http://tomcat ?.apache.org/tomcat ?-6.0-doc/apr ?.html

    down

    http://tomcat.heanet.ie/native/

    http://tomcat.heanet.ie/native/1.1.9/binaries/win32/tcnative-1.dll

    setup for Windows

    直接下載編譯好的二進制版本的dll庫文件

    http://tomcat.heanet.ie/native/1.1.9/binaries/win32/tcnative-1.dll來使Tomcat啟用APR ?

    setup for linux

    在Linux下,可以直接解壓和安裝bin目錄下的tomcat_native.tar.gz文件,編譯之前要確保apr庫已經安裝,安裝的方式:

    # ./configure --with-apr=/usr/local/apr
    # make
    # make install

    安裝成功后還需要對tomcat設置環境變量,方法是在catalina.sh文件中增加一行:

    CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"

    怎么才能判斷Tomcat是否已經啟用了APR庫呢?方法是通過看Tomcat的啟動日志

    如果沒有啟用APR,則啟動日志一般有這么一條:

    org.apache.coyote.http11.Http11Protocol start

    如果啟用了APR,則這條日志就會變成:

    ?


    使用了apr ?之后,如果使用了https,https的配置也需要作改變。需要用到openssl來進行證書文件的生成。?

    <!-- ssl for?apr ?-->?
    <Connector port="8443" maxHttpHeaderSize="8192"?
    maxThreads="150" minSpareThreads="25" maxSpareThreads="75"?
    enableLookups="false" disableUploadTimeout="true"?
    acceptCount="100" scheme="https" secure="true"?
    clientAuth="false"?
    SSLEngine="on"?
    SSLCertificateFile="..\conf\ca\server.crt"?
    SSLCertificateKeyFile="..\conf\ca\server.key" />?
    linux下編譯?
    cd apache-tomcat ?-5.5.14/bin/tomcat ?-native-1.1.1/jni/native/?
    ./configure --with-apr ?=/usr/bin/apr ?-1-config --with-java-home=/usr/java/jdk1.5.0_06/?
    make?
    make install?
    bin/catalina.sh?
    加上?
    CATALINA_OPTS="-Djava.library.path=/usr/local/apr ?/lib"

    Apache Tomcat 商用列表

    ?

    Apache Tomcat/5.5.23? Apache/2.0.61 (Unix) DAV/2 PHP/5.2.4 Server at msn.ent.ynet.com Port 80 http://msn.ent.ynet.com/photo.jsp?eid=57080047&bid=20331162&ofs=5&max=2 http://taobao.ent.ynet.com/photo.jsp?eid=49540108 502 Proxy Error Apache/2.0.61 (Unix) DAV/2 Server at taobao.ent.ynet.com Port 80 南京公安局 exception http://202.102.89.2/njga/addin/register/mainregister.jsp

    HTTP Status 500 -


    type ?Exception report

    message

    description ?The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    javax.servlet.ServletException: Request[/persionRegister] does not contain handler parameter named 'method'. This may be caused by whitespace in the label text.org.apache.struts.actions.DispatchAction.unspecified(DispatchAction.java:215)org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:249)org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)javax.servlet.http.HttpServlet.service(HttpServlet.java:690)javax.servlet.http.HttpServlet.service(HttpServlet.java:803)com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:177)com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:78)cn.myapps.base.web.filter.PersistenceFilter.doFilter(PersistenceFilter.java:29)cn.myapps.base.web.filter.SecurityFilter.doFilter(SecurityFilter.java:109)

    note ?The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.


    Apache Tomcat/6.0.14

    http://photograph.baihe.com/photograph/uploadFile.do;jsessionid=E6483BF8E57118CF4E21CF7F8C6DD18C

    Apache Tomcat/5.5

    javax.servlet.ServletException: Processing of multipart/form-data request failed. Read timed out org.apache.commons.fileupload.FileUploadException: Processing of multipart/form-data request failed. Read timed o

    tomcat 添加gzip壓縮

    http://bsb654321.iteye.com/blog/649053

    ?

    在文件tomcat/conf/server.xml 中添加紅色部分的配置即可打開使用壓縮傳輸功能:
    ????? <Connector port="8080" address="${jboss.bind.address}"
    ???????? maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
    ???????? emptySessionPath="true"
    ???????? enableLookups="false" redirectPort="8443" acceptCount="100"
    ???????? connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"
    ????????????? compression="on"???
    ???????? compressionMinSize="2048"???
    ???????? noCompressionUserAgents="gozilla, traviata"???
    ???????? compressableMimeType="application/java-archive,application/octet-stream,text/vnd.sun.j2me.app-descriptor,application/octet-stream, application/x-msdownload, p_w_picpath/png, p_w_picpath/gif, text/plain "
    />
    compression 開關
    noCompressionUserAgents 那種瀏覽器不使用壓縮功能
    compressionMinSize????? 啟用壓縮的輸出內容大小,這里面默認為2KB
    compressableMimeType??? 那些文件需要壓縮 mimetype
    在tomcat/webapps/ 工程/WEB-INF/web.xml 中增加下面的配置 Xml代碼 ?
  • ???<mime-mapping>??
  • ??????????<extension>conf</extension>??
  • ??????????<mime-type>text/plain</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>CONF</extension>??
  • ??????????<mime-type>text/plain</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>ini</extension>??
  • ??????????<mime-type>text/plain</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>INI</extension>??
  • ??????????<mime-type>text/plain</mime-type>??
  • ???</mime-mapping>??
  • <mime-mapping>??
  • ????<extension>png</extension>??
  • ????<mime-type>p_w_picpath/png</mime-type>??
  • </mime-mapping>??
  • ???<mime-mapping>??
  • ????<extension>PNG</extension>??
  • ????<mime-type>p_w_picpath/png</mime-type>??
  • </mime-mapping>??
  • ???<mime-mapping>??
  • ????<extension>gif</extension>??
  • ????<mime-type>p_w_picpath/gif</mime-type>??
  • </mime-mapping>??
  • ???<mime-mapping>??
  • ????<extension>GIF</extension>??
  • ????<mime-type>p_w_picpath/gif</mime-type>??
  • </mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>json</extension>??
  • ??????????<mime-type>text/plain</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>JSON</extension>??
  • ??????????<mime-type>text/plain</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>xml</extension>??
  • ??????????<mime-type>text/xml</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>XML</extension>??
  • ??????????<mime-type>text/xml</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>dll</extension>??
  • ??????????<mime-type>application/x-msdownload</mime-type>??
  • ???</mime-mapping>??
  • ???<mime-mapping>??
  • ??????????<extension>DLL</extension>??
  • ??????????<mime-type>application/x-msdownload</mime-type>??
  • ???</mime-mapping>???
  • LambdaProbe監控Tomcat 內存參數解析

    http://bbs.51testing.com/viewthread.php?tid=165106 tomcat monitor? JavaMelody / LambdaProbe http://jackyrong.iteye.com/blog/692004 之前介紹過一個監視應用的好工具JavaMelody,功能十分齊全,這次介紹個
    稍微小點的,專門為TOMCAT 而設計的。下面講解其用法:
    1 下載:
    http://www.lambdaprobe.org/downloads/1.7/probe.1.7b.zip
    2 解壓縮后,把probe.war放到TOMCAT的webapps下,設置server.xml
    的context
    3 設置用戶如下,在tomcat_user.xml中
    ?? vi /usr/local/tomcat/conf//tomcat-users.xml
    <?xml version='1.0' encoding='utf-8'?>
    <tomcat-users>
    ??????? <role rolename="manager"/>
    ??????? <role rolename="standard"/>
    ??????? <role rolename="tomcat"/>
    ??????? <role rolename="admin"/>
    ??????? <role rolename="role1"/>
    ??????? <user username="tomcat" password="tomcat" roles="tomcat"/>
    ??????? <user username="both" password="tomcat" roles="tomcat,role1"/>
    ??????? <user username="probe" password="probe" roles="admin,manager"/>
    ??????? <user username="role1" password="tomcat" roles="role1"/>
    </tomcat-users>
    4 設置環境變量,獲取服務器狀態
    # vi /etc/profile
    JAVA_OPTS=-Dcom.sun.management.jmxremote
    export JAVA_OPTS
    5 重啟動服務器
    6 輸入http://localhost/probe/,輸入用戶名和密碼
    7 即可進入,這里比較精彩的是對內存的監視,動態顯示了JVM的內存圖表 http://jackyrong.iteye.com/blog/731308 今天在JAVAEYE首頁看到這個工具的推薦,看了下,不錯:
    JavaMelody能夠在QA和實際運行生產環境監測Java或Java EE應用程序服務器。并以圖表的形式顯示:Java內存和Java CPU使用情況,用戶Session數量,JDBC連接數,和http請求、sql請求、jsp頁面與業務接口方法(EJB3、Spring、 Guice)的執行數量,平均執行時間,錯誤百分比等。圖表可以按天,周,月,年或自定義時間段查看。
    使用配置如下:
    1、到http://code.google.com/p/javamelody/downloads/list下載zip的壓縮包
    2、解壓縮并將javamelody.war復制到Tomcat發布目錄下
    3、在被監控項目web.xml中加入如下代碼
    <filter>???
    ??????? <filter-name>monitoring</filter-name>???
    ??????? <filter-class>net.bull.javamelody.MonitoringFilter</filter-class>???
    </filter>???
    <filter-mapping>???
    ??????? <filter-name>monitoring</filter-name>???
    ??????? <url-pattern>/*</url-pattern>???
    </filter-mapping>???
    <listener>???
    ??????? <listener-class>net.bull.javamelody.SessionListener</listener-class>???
    </listener>?

    于是就可以使用了,更詳細的可以參考這里:
    http://liuyes.iteye.com/blog/691752

    linux上tomcat6配置SSL雙向認證實現https安全訪問

    http://ml365.iteye.com/blog/850001 1 使用工具:
    apache-tomcat-6.0.29
    jdk1.6.23
    2 過程描述:
    ?????? 2.1 在我方的服務器上,通過jdk工具keytool生成密鑰對以及個人證書(其實就是認證申請文件.csr)。結果在我方生成兩個文件,分別是:tian.cer(導出的個人證書),tian.csr(輸出的認證簽名申請文件)。
    ?????? 2.2 將生成的tian.csr發送給個CA方,他們會根據這個生成以下文件返回給我方:
    Tian.crt(認證后的我方服務器端的數字證書),Ct2.crt(電信根證書),test.p12(帶私鑰的個人證書)。以下是解釋:
    根證書(ct2.crt)用于信任網站;個人證書(test.p12)用于向網站表明自己的身份。雙向。tomcat安裝ct2.crt、tian.crt,這個是向客戶端證明tomcat的身份;
    客戶端安裝ct2.crt、test.p12,這個是向tomcat服務器證明自己的身份。tian.crt是我方服務器的認證證書;ct2.crt是根 證書;test.p12是客戶端個人證書。tian.crt是ct2.crt根證書認證的;test.p12也是ct2.crt根證書做認證的。
    2.3 把CA方發過來的ct2.crt和tian.crt加入到我方tomcat,讓服務器信任證書。
    2.4 配置tomcat的server.xml配置文件,配置好https。
    2.5 每個訪問的sp(瀏覽器)先把ct2.crt放在瀏覽器的可信任根目錄里,然后安裝導入個人證書(test.p12)之后。訪問我方地址https://IP:8443即可。
    3 操作過程:
    3.1? 生成密鑰對以及個人證書
    命令:$ keytool -genkey -alias tian -keyalg RSA
    3.2導出個人證書
    命令:keytool -export -alias tian -file tian.cer
    信息:輸入keystore密碼:
    保存在文件中的認證 <tian.cer>
    3.3 輸出認證簽名申請文件(.csr)
    命令:keytool -certreq -file tian.csr -alias tian
    信息:輸入keystore密碼:
    3. 4 先導入根證書
    命令:keytool -import -v -trustcacerts -file ct2.crt -alias ct2_root
    信任這個認證? [否]:? Y
    認證已添加至keystore中
    [正在存儲 /home/tomcat/.keystore]
    3. 5 導入CA認證過的證書(tian.crt)
    命令:keytool -import -v -file tian.crt -alias tian
    信息:
    輸入keystore密碼:
    認證回復已安裝在 keystore中
    [正在存儲 /home/tomcat/.keystore]
    3.6配置tomcat:
    ??? <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
    ?????????????? maxThreads="150" scheme="https" secure="true"
    ?????????? keystoreFile="/home/tomcat/.keystore"
    ????????? keystorePass="password"
    ??????? truststoreFile="/home/tomcat/.keystore"
    ?????? truststorePass="password"
    ???? clientAuth="true" sslProtocol="TLS" />
    3.7 客服端安裝個人證書和根證書
    3.8 訪問https://IP:8443出現提示你提交個人證書提示框。成功雙向認證!

    tomcat的https configuration

    http://haoningabc.iteye.com/blog/906890

    轉載http://www.chinaunix.net/jh/13/456376.html
    http://andyj.iteye.com/blog/176470
    keytool -genkey -alias tomcat -keyalg RSA -keystore test.keystore
    生成awcloud.keystore,注意:第一個用戶名為本地計算機名稱,不能為ip,國家寫CN
    keytool -list -keystore keystore

    查看
    keytool -certreq -keyalg RSA -alias tomcat -file test.csr -keystore test.keystore

    生成test.csr
    http://www.verisign.com/server2/trial/faq/index.html
    Free 30-Day SSL Trial
    VeriSign? SSL Test Certificate 點TRY
    輸入郵箱,continue
    Server platform:選apache
    Paste Certificate Signing Request (CSR)輸入test.csr的內容
    收郵件后,點連接進入,保存test.cer
    keytool -import -alias root -keystore test.keystore -trustcacerts -file root.cer
    keytool -

    Tomcat的增加/查看jvm虛擬內存

    http://gqsunrise.iteye.com/blog/1176768

    Win 操作系統? 第一種方法:? 修改 tomcat/bin/catalina.bat 文件? 增加一行 set JAVA_OPTS=-Xms256m -Xmx1024m

    Linux 操作系統? 修改 tomcat/bin/catalina.sh 文件? 增加? JAVA_OPTS="-Xms256m -Xmx1024m"

    http://localhost:8080/server-status 選擇“Server Status”,便可以看到JVM的占用情況

    end

    轉載于:https://blog.51cto.com/lya041/755214

    總結

    以上是生活随笔為你收集整理的webServer tomcat5/tomcat6/tomcat7诠释的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。