锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲一区二区观看播放,久久久久亚洲Av无码专,亚洲人成影院在线http://www.tkk7.com/pirate/category/2339.htmlzh-cnFri, 02 Mar 2007 06:49:12 GMTFri, 02 Mar 2007 06:49:12 GMT60浣跨敤gzip鍘嬬緝欏甸潰http://www.tkk7.com/pirate/archive/2005/08/03/9140.html嫻瘋醇嫻瘋醇Wed, 03 Aug 2005 09:25:00 GMThttp://www.tkk7.com/pirate/archive/2005/08/03/9140.htmlhttp://www.tkk7.com/pirate/comments/9140.htmlhttp://www.tkk7.com/pirate/archive/2005/08/03/9140.html#Feedback0http://www.tkk7.com/pirate/comments/commentRss/9140.htmlhttp://www.tkk7.com/pirate/services/trackbacks/9140.htmlgzip灝辨槸GNU ZIP浜?寰堝嫻忚鍣ㄩ兘鏀寔榪欑鍘嬬緝鏍煎紡鐨刢ontent,闇瑕佸姞涓妑esponse.addHeader("Content-Encoding", "gzip");涓嶈繃閬垮厤鏌愪簺涓嶆敮鎸佺殑嫻忚鍣ㄥ嚭鐜伴敊璇?闇瑕佹鏌equest.getHeaders("Accept-Encoding");閲岄潰鏄惁鍖呭惈浜唃izp.

鍘嬬緝澶勭悊鐨勫伐搴忔槸鍦ㄨ繃婊ら摼閲岄潰澶勭悊鐨?鍦ㄨ嚜宸辯殑搴旂敤鐨剋eb.xml閲岄潰鎻忚堪:

GzipFilter
compressionFilters.CompressionFilter


GzipFilter
*

榪欓噷CompressionFilter鏄疐ilter鎺ュ彛鐨勭被,鍦ㄥ疄鐜癲oFilter鏂規硶鐨勬椂鍊?
wrappedResponse = new CompressionServletResponseWrapper((HttpServletResponse)response);
chain.doFilter(request, wrappedResponse);
瀹為檯涓婃槸鐢–ompressionServletResponseWrapper鏉ュ鐞嗘湇鍔″櫒绔殑response,鎴戜滑閮界煡閬搄sp鏄劇ず鐨勫唴瀹規槸 response閲岄潰鐨刼ut杈撳嚭鐨勬祦浜х敓鍑烘潵鐨?閭d箞鐢–ompressionServletResponseWrapper灝唎ut鐨勬祦閲囩敤gzip鍘嬬緝涓嬪氨鍙互瀹屾垚浠誨姟浜?CompressionResponseStream stream = new CompressionResponseStream(response);
鍦–ompressionResponseStream閲岄潰灝唎utputstream灝佽浜嗕竴涓?BR>GZIPOutputStream gzipstream = new GZIPOutputStream(output);
response.addHeader("Content-Encoding", "gzip");
鍏蜂綋浠g爜搴旇鍦ㄧ綉涓婁篃鑳芥壘鍒頒簡.



嫻瘋醇 2005-08-03 17:25 鍙戣〃璇勮
]]>
Tomcat閰嶇疆鎶宸op 10 [杞琞http://www.tkk7.com/pirate/archive/2005/08/03/9130.html嫻瘋醇嫻瘋醇Wed, 03 Aug 2005 07:00:00 GMThttp://www.tkk7.com/pirate/archive/2005/08/03/9130.htmlhttp://www.tkk7.com/pirate/comments/9130.htmlhttp://www.tkk7.com/pirate/archive/2005/08/03/9130.html#Feedback0http://www.tkk7.com/pirate/comments/commentRss/9130.htmlhttp://www.tkk7.com/pirate/services/trackbacks/9130.html                  浣滆咃細Jason Brittain & Ian F. Darwin 璇戣咃細闄堝厜 鍙戞枃鏃墮棿錛?004.11.08

            緙栬呮寜錛氱幇鍦ㄥ紑鍙慗ava Web搴旂敤錛屽緩绔嬪拰閮ㄧ講Web鍐呭鏄竴浠跺緢綆鍗曠殑宸ヤ綔銆備嬌鐢↗akarta
            Tomcat浣滀負Servlet鍜孞SP瀹瑰櫒鐨勪漢宸茬粡閬嶅強鍏ㄤ笘鐣屻俆omcat鍏鋒湁鍏嶈垂銆佽法騫沖彴絳夎澶氱壒鎬э紝騫朵笖鏇存柊寰楀緢蹇紝鐜板湪闈炲父鐨勬祦琛屻?

                浣犳墍闇瑕佸仛鐨勫氨鏄細鎸夌収浣犵殑闇姹傞厤緗甌omcat錛屽彧瑕佷綘姝g‘閰嶇疆錛孴omcat涓鑸兘鑳介傚悎浣犵殑瑕佹眰銆傚笇鏈涘浣犳湁鎵甯姪銆?

                1錛?閰嶇疆緋葷粺綆$悊錛圓dmin Web Application錛?

               
            澶у鏁板晢涓氬寲鐨凧2EE鏈嶅姟鍣ㄩ兘鎻愪緵涓涓姛鑳藉己澶х殑綆$悊鐣岄潰錛屼笖澶ч兘閲囩敤鏄撲簬鐞嗚В鐨刉eb搴旂敤鐣岄潰銆俆omcat鎸夌収鑷繁鐨勬柟寮忥紝鍚屾牱鎻愪緵涓涓垚鐔熺殑綆$悊宸ュ叿錛屽茍涓斾笣姣笉閫婁簬閭d簺鍟嗕笟鍖栫殑绔炰簤瀵規墜銆俆omcat鐨凙dmin
            Web Application鏈鍒濆湪4.1鐗堟湰鏃跺嚭鐜幫紝褰撴椂鐨勫姛鑳藉寘鎷鐞哻ontext銆乨ata
            source銆乽ser鍜実roup絳夈傚綋鐒朵篃鍙互綆$悊鍍忓垵濮嬪寲鍙傛暟錛寀ser銆乬roup銆乺ole鐨勫縐嶆暟鎹簱綆$悊絳夈傚湪鍚庣畫鐨勭増鏈腑錛岃繖浜涘姛鑳藉皢寰楀埌寰堝ぇ鐨勬墿灞曪紝浣嗙幇鏈夌殑鍔熻兘宸茬粡闈炲父瀹炵敤浜嗐?


                Admin Web Application琚畾涔夊湪鑷姩閮ㄧ講鏂囦歡錛欳ATALINA_BASE/webapps/admin.xml
            銆傦紙璇戣呮敞錛欳ATALINA_BASE鍗硉omcat瀹夎鐩綍涓嬬殑server鐩綍錛?

               
            浣犲繀欏葷紪杈戣繖涓枃浠訛紝浠ョ‘瀹欳ontext涓殑docBase鍙傛暟鏄粷瀵硅礬寰勩備篃灝辨槸璇達紝CATALINA_BASE/webapps/admin.xml
            鐨勮礬寰勬槸緇濆璺緞銆備綔涓哄彟澶栦竴縐嶉夋嫨錛屼綘涔熷彲浠ュ垹闄よ繖涓嚜鍔ㄩ儴緗叉枃浠訛紝鑰屽湪server.xml鏂囦歡涓緩绔嬩竴涓狝dmin Web
            Application鐨刢ontext錛屾晥鏋滄槸涓鏍風殑銆備綘涓嶈兘綆$悊Admin Web
            Application榪欎釜搴旂敤錛屾崲鑰岃█涔嬶紝闄や簡鍒犻櫎CATALINA_BASE/webapps/admin.xml 錛屼綘鍙兘浠涔堥兘鍋氫笉浜嗐?


               
            濡傛灉浣犱嬌鐢║serDatabaseRealm錛堥粯璁わ級錛屼綘灝嗛渶瑕佹坊鍔犱竴涓猽ser浠ュ強涓涓猺ole鍒癈ATALINA_BASE/conf/tomcat-users.xml
            鏂囦歡涓備綘緙栬緫榪欎釜鏂囦歡錛屾坊鍔犱竴涓悕鍙渁dmin鈥濈殑role 鍒拌鏂囦歡涓紝濡備笅錛?

<role name="admin"/>


                浣犲悓鏍烽渶瑕佹湁涓涓敤鎴鳳紝騫朵笖榪欎釜鐢ㄦ埛鐨勮鑹叉槸鈥渁dmin鈥濄傝薄瀛樺湪鐨勭敤鎴烽偅鏍鳳紝娣誨姞涓涓敤鎴鳳紙鏀瑰彉瀵嗙爜浣垮叾鏇村姞瀹夊叏錛夛細

<user name="admin" password="deep_dark_secret" roles="admin"/>


               
            褰撲綘瀹屾垚榪欎簺姝ラ鍚庯紝璇烽噸鏂板惎鍔═omcat錛岃闂?A href="http://localhost:8080/admin">http://localhost:8080/admin錛屼綘灝嗙湅鍒頒竴涓櫥褰曠晫闈€侫dmin
            Web Application閲囩敤鍩轟簬瀹瑰櫒綆$悊鐨勫畨鍏ㄦ満鍒訛紝騫墮噰鐢ㄤ簡Jakarta
            Struts妗嗘灦銆備竴鏃︿綘浣滀負鈥渁dmin鈥濊鑹茬殑鐢ㄦ埛鐧誨綍綆$悊鐣岄潰錛屼綘灝嗚兘澶熶嬌鐢ㄨ繖涓鐞嗙晫闈㈤厤緗甌omcat銆?

                2錛庨厤緗簲鐢ㄧ鐞嗭紙Manager Web Application錛?

                Manager Web Application璁╀綘閫氳繃涓涓瘮Admin Web
            Application鏇翠負綆鍗曠殑鐢ㄦ埛鐣岄潰錛屾墽琛屼竴浜涚畝鍗曠殑Web搴旂敤浠誨姟銆?

                Manager Web Application琚瀹氫箟鍦ㄤ竴涓嚜鍔ㄩ儴緗叉枃浠朵腑錛?
                CATALINA_BASE/webapps/manager.xml 銆?

               
            浣犲繀欏葷紪杈戣繖涓枃浠訛紝浠ョ‘淇漜ontext鐨刣ocBase鍙傛暟鏄粷瀵硅礬寰勶紝涔熷氨鏄CATALINA_HOME/server/webapps/manager鐨勭粷瀵硅礬寰勩傦紙璇戣呮敞錛欳ATALINA_HOME鍗硉omcat瀹夎鐩綍錛?


               
            濡傛灉浣犱嬌鐢ㄧ殑鏄疷serDatabaseRealm錛岄偅涔堜綘闇瑕佹坊鍔犱竴涓鑹插拰涓涓敤鎴峰埌CATALINA_BASE/conf/tomcat-users.xml鏂囦歡涓傛帴涓嬫潵錛岀紪杈戣繖涓枃浠訛紝娣誨姞涓涓悕涓衡渕anager鈥濈殑瑙掕壊鍒拌鏂囦歡涓細


<role name=鈥漨anager鈥?gt;


                浣犲悓鏍烽渶瑕佹湁涓涓鑹蹭負鈥渕anager鈥濈殑鐢ㄦ埛銆傚儚宸茬粡瀛樺湪鐨勭敤鎴烽偅鏍鳳紝娣誨姞涓涓柊鐢ㄦ埛錛堟敼鍙樺瘑鐮佷嬌鍏舵洿鍔犲畨鍏級錛?

<user name="manager" password="deep_dark_secret" roles="manager"/>


               
            鐒跺悗閲嶆柊鍚姩Tomcat錛岃闂?A href="http://localhost/manager/list">http://localhost/manager/list錛屽皢鐪嬪埌涓涓緢鏈寸礌鐨勬枃鏈瀷綆$悊鐣岄潰錛屾垨鑰呰闂?A href="http://localhost/manager/html/list">http://localhost/manager/html/list錛屽皢鐪嬪埌涓涓狧MTL鐨勭鐞嗙晫闈€備笉綆℃槸鍝鏂瑰紡閮借鏄庝綘鐨凪anager
            Web Application鐜板湪宸茬粡鍚姩浜嗐?

                Manager
            application璁╀綘鍙互鍦ㄦ病鏈夌郴緇熺鐞嗙壒鏉冪殑鍩虹涓婏紝瀹夎鏂扮殑Web搴旂敤錛屼互鐢ㄤ簬嫻嬭瘯銆傚鏋滄垜浠湁涓涓柊鐨剋eb搴旂敤浣嶄簬/home/user/hello涓嬪湪錛屽茍涓旀兂鎶婂畠瀹夎鍒?
            /hello涓嬶紝涓轟簡嫻嬭瘯榪欎釜搴旂敤錛屾垜浠彲浠ヨ繖涔堝仛錛屽湪絎竴涓枃浠舵涓緭鍏モ?hello鈥濓紙浣滀負璁塊棶鏃剁殑path錛夛紝鍦ㄧ浜屼釜鏂囨湰妗嗕腑杈撳叆鈥渇ile:/home/user/hello鈥濓紙浣滀負Config
            URL錛夈?

                Manager
            application榪樺厑璁鎬綘鍋滄銆侀噸鏂板惎鍔ㄣ佺Щ闄や互鍙婇噸鏂伴儴緗蹭竴涓獁eb搴旂敤銆傚仠姝竴涓簲鐢ㄤ嬌鍏舵棤娉曡璁塊棶錛屽綋鏈夌敤鎴峰皾璇曡闂繖涓鍋滄鐨勫簲鐢ㄦ椂錛屽皢鐪嬪埌涓涓?03鐨勯敊璇??鈥?03
            - This application is not currently available鈥濄?

               
            縐婚櫎涓涓獁eb搴旂敤錛屽彧鏄寚浠嶵omcat鐨勮繍琛屾嫹璐濅腑鍒犻櫎浜嗚搴旂敤錛屽鏋滀綘閲嶆柊鍚姩Tomcat錛岃鍒犻櫎鐨勫簲鐢ㄥ皢鍐嶆鍑虹幇錛堜篃灝辨槸璇達紝縐婚櫎騫朵笉鏄寚浠庣‖鐩樹笂鍒犻櫎錛夈?


                3錛庨儴緗蹭竴涓獁eb搴旂敤

            鏈変袱涓姙娉曞彲浠ュ湪緋葷粺涓儴緗瞱eb鏈嶅姟銆?
                1> 鎷瘋礉浣犵殑WAR鏂囦歡鎴栬呬綘鐨剋eb搴旂敤鏂囦歡澶癸紙鍖呮嫭璇eb鐨勬墍鏈夊唴瀹癸級鍒癈ATALINA_BASE/webapps鐩綍涓嬨?

                2>
            涓轟綘鐨剋eb鏈嶅姟寤虹珛涓涓彧鍖呮嫭context鍐呭鐨刋ML鐗囨柇鏂囦歡錛屽茍鎶婅鏂囦歡鏀懼埌CATALINA_BASE/webapps鐩綍涓嬨傝繖涓獁eb搴旂敤鏈韓鍙互瀛樺偍鍦ㄧ‖鐩樹笂鐨勪換浣曞湴鏂廣?


               
            濡傛灉浣犳湁涓涓猈AR鏂囦歡錛屼綘鑻ユ兂閮ㄧ講瀹冿紝鍒欏彧闇瑕佹妸璇ユ枃浠剁畝鍗曠殑鎷瘋礉鍒癈ATALINA_BASE/webapps鐩綍涓嬪嵆鍙紝鏂囦歡蹇呴』浠モ?war鈥濅綔涓烘墿灞曞悕銆備竴鏃omcat鐩戝惉鍒拌繖涓枃浠訛紝瀹冨皢錛堢己鐪佺殑錛夎В寮璇ユ枃浠跺寘浣滀負涓涓瓙鐩綍錛屽茍浠AR鏂囦歡鐨勬枃浠跺悕浣滀負瀛愮洰褰曠殑鍚嶅瓧銆傛帴涓嬫潵錛孴omcat灝嗗湪鍐呭瓨涓緩绔嬩竴涓猚ontext錛屽氨濂借薄浣犲湪server.xml鏂囦歡閲屽緩绔嬩竴鏍楓傚綋鐒訛紝鍏朵粬蹇呴渶鐨勫唴瀹癸紝灝嗕粠server.xml涓殑DefaultContext鑾峰緱銆?


                閮ㄧ講web搴旂敤鐨勫彟涓縐嶆柟寮忔槸鍐欎竴涓狢ontext
            XML鐗囨柇鏂囦歡錛岀劧鍚庢妸璇ユ枃浠舵嫹璐濆埌CATALINA_BASE/webapps鐩綍涓嬨備竴涓狢ontext鐗囨柇騫墮潪涓涓畬鏁寸殑XML鏂囦歡錛岃屽彧鏄竴涓猚ontext鍏冪礌錛屼互鍙婂璇ュ簲鐢ㄧ殑鐩稿簲鎻忚堪銆傝繖縐嶇墖鏂枃浠跺氨鍍忔槸浠巗erver.xml涓垏鍙栧嚭鏉ョ殑context鍏冪礌涓鏍鳳紝鎵浠ヨ繖縐嶇墖鏂鍛藉悕涓衡渃ontext鐗囨柇鈥濄?


                涓句釜渚嬪瓙錛屽鏋滄垜浠兂閮ㄧ講涓涓悕鍙玀yWebApp.war鐨勫簲鐢紝璇ュ簲鐢ㄤ嬌鐢╮ealm浣滀負璁塊棶鎺у埗鏂瑰紡錛屾垜浠彲浠ヤ嬌鐢ㄤ笅闈㈣繖涓墖鏂細


<!--
Context fragment for deploying MyWebApp.war
-->
<Context path="/demo" docBase="webapps/MyWebApp.war"
debug="0" privileged="true">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Context>


                鎶婅鐗囨柇鍛藉悕涓衡淢yWebApp.xml鈥濓紝鐒跺悗鎷瘋礉鍒癈ATALINA_BASE/webapps鐩綍涓嬨?

               
            榪欑context鐗囨柇鎻愪緵浜嗕竴縐嶄究鍒╃殑鏂規硶鏉ラ儴緗瞱eb搴旂敤錛屼綘涓嶉渶瑕佺紪杈憇erver.xml錛岄櫎闈炰綘鎯蟲敼鍙樼己鐪佺殑閮ㄧ講鐗規э紝瀹夎涓涓柊鐨剋eb搴旂敤鏃朵笉闇瑕侀噸鍚姩Tomcat銆?BR>             4錛庨厤緗櫄鎷熶富鏈猴紙Virtual Hosts錛?

            鍏充簬server.xml涓淗ost鈥濊繖涓厓绱狅紝鍙湁鍦ㄤ綘璁劇疆铏氭嫙涓繪満鐨勬墠闇瑕佷慨鏀廣傝櫄鎷熶富鏈烘槸涓縐嶅湪涓涓獁eb鏈嶅姟鍣ㄤ笂鏈嶅姟澶氫釜鍩熷悕鐨勬満鍒訛紝瀵規瘡涓煙鍚嶈岃█錛岄兘濂借薄鐙韓浜嗘暣涓富鏈恒傚疄闄呬笂錛屽ぇ澶氭暟鐨勫皬鍨嬪晢鍔$綉绔欓兘鏄噰鐢ㄨ櫄鎷熶富鏈哄疄鐜扮殑錛岃繖涓昏鏄洜涓鴻櫄鎷熶富鏈鴻兘鐩存帴榪炴帴鍒癐nternet騫舵彁渚涚浉搴旂殑甯﹀錛屼互淇濋殰鍚堢悊鐨勮闂搷搴旈熷害錛屽彟澶栬櫄鎷熶富鏈鴻繕鑳芥彁渚涗竴涓ǔ瀹氱殑鍥哄畾IP銆?


               
            鍩轟簬鍚嶅瓧鐨勮櫄鎷熶富鏈哄彲浠ヨ寤虹珛鍦ㄤ換浣晈eb鏈嶅姟鍣ㄤ笂錛屽緩绔嬬殑鏂規硶灝辨槸閫氳繃鍦ㄥ煙鍚嶆湇鍔″櫒錛圖NS錛変笂寤虹珛IP鍦板潃鐨勫埆鍚嶏紝騫朵笖鍛婅瘔web鏈嶅姟鍣ㄦ妸鍘誨線涓嶅悓鍩熷悕鐨勮姹傚垎鍙戝埌鐩稿簲鐨勭綉欏電洰褰曘傚洜涓鴻繖綃囨枃绔犱富瑕佹槸璁睺omcat錛屾垜浠笉鍑嗗浠嬬粛鍦ㄥ悇縐嶆搷浣滅郴緇熶笂璁劇疆DNS鐨勬柟娉曪紝濡傛灉浣犲湪榪欐柟闈㈤渶瑕佸府鍔╋紝璇峰弬鑰冦奃NS
            and Bind銆嬩竴涔︼紝浣滆呮槸Paul Albitz and Cricket Liu
            (O'Reilly)銆備負浜嗙ず鑼冩柟渚匡紝鎴戝皢浣跨敤涓涓潤鎬佺殑涓繪満鏂囦歡錛屽洜涓鴻繖鏄祴璇曞埆鍚嶆渶綆鍗曠殑鏂規硶銆?

               
            鍦═omcat涓嬌鐢ㄨ櫄鎷熶富鏈猴紝浣犻渶瑕佽緗瓺NS鎴栦富鏈烘暟鎹備負浜嗘祴璇曪紝涓烘湰鍦癐P璁劇疆涓涓狪P鍒悕灝辮凍澶熶簡錛屾帴涓嬫潵錛屼綘闇瑕佸湪server.xml涓坊鍔犲嚑琛屽唴瀹癸紝濡備笅錛?


<Server port="8005" shutdown="SHUTDOWN" debug="0">
<Service name="Tomcat-Standalone">
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8080" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"/>
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8443" minProcessors="5" maxProcessors="75"
acceptCount="10" debug="0" scheme="https" secure="true"/>
<Factory className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory"
clientAuth="false" protocol="TLS" />
</Connector>
<Engine name="Standalone" defaultHost="localhost" debug="0">
<!-- This Host is the default Host -->
<Host name="localhost" debug="0" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="ROOT" debug="0"/>
<Context path="/orders" docBase="/home/ian/orders" debug="0"
reloadable="true" crossContext="true">
</Context>
</Host>

<!-- This Host is the first "Virtual Host": http://www.example.com/ -->
<Host name="<Context path="" docBase="."/>
</Host>

</Engine>
</Service>
</Server>


               
            Tomcat鐨剆erver.xml鏂囦歡錛屽湪鍒濆鐘舵佷笅錛屽彧鍖呮嫭涓涓櫄鎷熶富鏈猴紝浣嗘槸瀹冨鏄撹鎵╁厖鍒版敮鎸佸涓櫄鎷熶富鏈恒傚湪鍓嶉潰鐨勪緥瀛愪腑灞曠ず鐨勬槸涓涓畝鍗曠殑server.xml鐗堟湰錛屽叾涓矖浣撻儴鍒嗗氨鏄敤浜庢坊鍔犱竴涓櫄鎷熶富鏈恒傛瘡涓涓狧ost鍏冪礌蹇呴』鍖呮嫭涓涓垨澶氫釜context鍏冪礌錛屾墍鍖呭惈鐨刢ontext鍏冪礌涓繀欏繪湁涓涓槸榛樿鐨刢ontext錛岃繖涓粯璁ょ殑context鐨勬樉紺鴻礬寰勫簲璇ヤ負絀猴紙渚嬪錛宲ath=鈥濃濓級銆?


                5錛庨厤緗熀紜楠岃瘉錛圔asic Authentication錛?

                瀹瑰櫒綆$悊楠岃瘉鏂規硶鎺у埗鐫褰撶敤鎴瘋闂彈淇濇姢鐨剋eb搴旂敤璧勬簮鏃訛紝濡備綍榪涜鐢ㄦ埛鐨勮韓浠介壌鍒傚綋涓涓獁eb搴旂敤浣跨敤浜咮asic
            Authentication錛圔ASIC鍙傛暟鍦╳eb.xml鏂囦歡涓璦uto-method鍏冪礌涓緗級錛岃屾湁鐢ㄦ埛璁塊棶鍙椾繚鎶ょ殑web搴旂敤鏃訛紝Tomcat灝嗛氳繃HTTP
            Basic
            Authentication鏂瑰紡錛屽脊鍑轟竴涓璇濇錛岃姹傜敤鎴瘋緭鍏ョ敤鎴峰悕鍜屽瘑鐮併傚湪榪欑楠岃瘉鏂規硶涓紝鎵鏈夊瘑鐮佸皢琚互64浣嶇殑緙栫爜鏂瑰紡鍦ㄧ綉緇滀笂浼犺緭銆?


                娉ㄦ剰錛氫嬌鐢˙asic
            Authentication閫氳繃琚涓烘槸涓嶅畨鍏ㄧ殑錛屽洜涓哄畠娌℃湁寮哄仴鐨勫姞瀵嗘柟娉曪紝闄ら潪鍦ㄥ鎴風鍜屾湇鍔″櫒绔兘浣跨敤HTTPS鎴栬呭叾浠栧瘑鐮佸姞瀵嗙爜鏂瑰紡錛堟瘮濡傦紝鍦ㄤ竴涓櫄鎷熺浜虹綉緇滀腑錛夈傝嫢娌℃湁棰濆鐨勫姞瀵嗘柟娉曪紝緗戠粶綆$悊鍛樺皢鑳藉鎴幏錛堟垨婊ョ敤錛夌敤鎴風殑瀵嗙爜銆備絾鏄紝濡傛灉浣犳槸鍒氬紑濮嬩嬌鐢═omcat錛屾垨鑰呬綘鎯沖湪浣犵殑web搴旂敤涓祴璇曚竴涓嬪熀浜庡鍣ㄧ殑瀹夊叏綆$悊錛孊asic
            Authentication榪樻槸闈炲父鏄撲簬璁劇疆鍜屼嬌鐢ㄧ殑銆傚彧闇瑕佹坊鍔犲拰涓や釜鍏冪礌鍒頒綘鐨剋eb搴旂敤鐨剋eb.xml鏂囦歡涓紝騫朵笖鍦–ATALINA_BASE/conf/tomcat-users.xml
            鏂囦歡涓坊鍔犻傚綋鐨勫拰鍗沖彲錛岀劧鍚庨噸鏂板惎鍔═omcat銆?

                涓嬮潰渚嬪瓙涓殑web.xml鎽樿嚜涓涓勘涔愰儴浼氬憳緗戠珯緋葷粺錛岃緋葷粺涓彧鏈塵ember鐩綍琚繚鎶よ搗鏉ワ紝騫朵嬌鐢˙asic
            Authentication榪涜韜喚楠岃瘉銆傝娉ㄦ剰錛岃繖縐嶆柟寮忓皢鏈夋晥鐨勪唬鏇緼pache web鏈嶅姟鍣ㄤ腑鐨?htaccess鏂囦歡銆?

<!--
Define the Members-only area, by defining
a "Security Constraint" on this Application, and
mapping it to the subdirectory (URL) that we want
to restrict.
-->
<security-constraint>
<web-resource-collection>
<web-resource-name>
Entire Application
</web-resource-name>
<url-pattern>/members/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>member</role-name>
</auth-constraint>
</security-constraint>
<!-- Define the Login Configuration for this Application -->
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>My Club Members-only Area</realm-name>
</login-config>


                6錛庨厤緗崟鐐圭櫥褰曪紙Single Sign-On錛?

               
            涓鏃︿綘璁劇疆浜唕ealm鍜岄獙璇佺殑鏂規硶錛屼綘灝遍渶瑕佽繘琛屽疄闄呯殑鐢ㄦ埛鐧誨綍澶勭悊銆備竴鑸鏉ワ紝瀵圭敤鎴瘋岃█鐧誨綍緋葷粺鏄竴浠跺緢楹葷儲鐨勪簨鎯咃紝浣犲繀欏誨敖閲忓噺灝戠敤鎴風櫥褰曢獙璇佺殑嬈℃暟銆備綔涓虹己鐪佺殑鎯呭喌錛屽綋鐢ㄦ埛絎竴嬈¤姹傚彈淇濇姢鐨勮祫婧愭椂錛屾瘡涓涓獁eb搴旂敤閮戒細瑕佹眰鐢ㄦ埛鐧誨綍銆傚鏋滀綘榪愯浜嗗涓獁eb搴旂敤錛屽茍涓旀瘡涓簲鐢ㄩ兘闇瑕佽繘琛屽崟鐙殑鐢ㄦ埛楠岃瘉錛岄偅榪欑湅璧鋒潵灝辨湁鐐瑰儚浣犲湪涓庝綘鐨勭敤鎴鋒悘鏂椼傜敤鎴蜂滑涓嶇煡閬撴庢牱鎵嶈兘鎶婂涓垎紱葷殑搴旂敤鏁村悎鎴愪竴涓崟鐙殑緋葷粺錛屾墍鏈変粬浠篃灝變笉鐭ラ亾浠栦滑闇瑕佽闂灝戜釜涓嶅悓鐨勫簲鐢紝鍙槸寰堣糠鎯戯紝涓轟粈涔堟昏涓嶅仠鐨勭櫥褰曘?


                Tomcat 4鐨勨渟ingle
            sign-on鈥濈壒鎬у厑璁哥敤鎴峰湪璁塊棶鍚屼竴铏氭嫙涓繪満涓嬫墍鏈墂eb搴旂敤鏃訛紝鍙渶鐧誨綍涓嬈°備負浜嗕嬌鐢ㄨ繖涓姛鑳斤紝浣犲彧闇瑕佸湪Host涓婃坊鍔犱竴涓猄ingleSignOn
            Valve鍏冪礌鍗沖彲錛屽涓嬫墍紺猴細

<Valve className="org.apache.catalina.authenticator.SingleSignOn"
debug="0"/>


                鍦═omcat鍒濆瀹夎鍚庯紝server.xml鐨勬敞閲婇噷闈㈠寘鎷琒ingleSignOn
            Valve閰嶇疆鐨勪緥瀛愶紝浣犲彧闇瑕佸幓鎺夋敞閲婏紝鍗沖彲浣跨敤銆傞偅涔堬紝浠諱綍鐢ㄦ埛鍙鐧誨綍榪囦竴涓簲鐢紝鍒欏浜庡悓涓铏氭嫙涓繪満涓嬬殑鎵鏈夊簲鐢ㄥ悓鏍鋒湁鏁堛?

                浣跨敤single sign-on valve鏈変竴浜涢噸瑕佺殑闄愬埗錛?
                1>
            value蹇呴』琚厤緗拰宓屽鍦ㄧ浉鍚岀殑Host鍏冪礌閲岋紝騫朵笖鎵鏈夐渶瑕佽繘琛屽崟鐐歸獙璇佺殑web搴旂敤錛堝繀欏婚氳繃context鍏冪礌瀹氫箟錛夐兘浣嶄簬璇ost涓嬨?

                2> 鍖呮嫭鍏變韓鐢ㄦ埛淇℃伅鐨剅ealm蹇呴』琚緗湪鍚屼竴綰ost涓垨鑰呭祵濂椾箣澶栥?
                3> 涓嶈兘琚玞ontext涓殑realm瑕嗙洊銆?
                4>
            浣跨敤鍗曠偣鐧誨綍鐨剋eb搴旂敤鏈濂戒嬌鐢ㄤ竴涓猅omcat鐨勫唴緗殑楠岃瘉鏂瑰紡錛堣瀹氫箟鍦╳eb.xml涓殑涓級錛岃繖姣旇嚜瀹氫箟鐨勯獙璇佹柟寮忓己錛孴omcat鍐呯疆鐨勭殑楠岃瘉鏂瑰紡鍖呮嫭basic銆乨igest銆乫orm鍜宑lient-cert銆?

                5>
            濡傛灉浣犱嬌鐢ㄥ崟鐐圭櫥褰曪紝榪樺笇鏈涢泦鎴愪竴涓涓夋柟鐨剋eb搴旂敤鍒頒綘鐨勭綉绔欎腑鏉ワ紝騫朵笖榪欎釜鏂扮殑web搴旂敤浣跨敤瀹冭嚜宸辯殑楠岃瘉鏂瑰紡錛岃屼笉浣跨敤瀹瑰櫒綆$悊瀹夊叏錛岄偅浣犲熀鏈笂灝辨病鎷涗簡銆備綘鐨勭敤鎴鋒瘡嬈$櫥褰曞師鏉ユ墍鏈夊簲鐢ㄦ椂闇瑕佺櫥褰曚竴嬈★紝騫朵笖鍦ㄨ姹傛柊鐨勭涓夋柟搴旂敤鏃惰繕寰楀啀鐧誨綍涓嬈°傚綋鐒訛紝濡傛灉浣犳嫢鏈夎繖涓涓夋柟web搴旂敤鐨勬簮鐮侊紝鑰屼綘鍙堟槸涓涓▼搴忓憳錛屼綘鍙互淇敼瀹冿紝浣嗛偅鎭愭曚篃涓嶅鏄撳仛銆?

                6> 鍗曠偣鐧誨綍闇瑕佷嬌鐢╟ookies銆?BR>            7錛庨厤緗敤鎴峰畾鍒剁洰褰曪紙Customized User Directores錛?

               
            涓浜涚珯鐐瑰厑璁鎬釜鍒敤鎴峰湪鏈嶅姟鍣ㄤ笂鍙戝竷緗戦〉銆備緥濡傦紝涓鎵澶у鐨勫闄㈠彲鑳芥兂緇欐瘡涓浣嶅鐢熶竴涓叕鍏卞尯鍩燂紝鎴栬呮槸涓涓狪SP甯屾湜緇欎竴浜泈eb絀洪棿緇欎粬鐨勫鎴鳳紝浣嗚繖鍙堜笉鏄櫄鎷熶富鏈恒傚湪榪欑鎯呭喌涓嬶紝涓涓吀鍨嬬殑鏂規硶灝辨槸鍦ㄧ敤鎴峰悕鍓嶉潰鍔犱竴涓壒孌婂瓧絎︼紙~錛夛紝浣滀負姣忎綅鐢ㄦ埛鐨勭綉绔欙紝姣斿錛?

                http://www.cs.myuniversity.edu/~username
                http://members.mybigisp.com/~username

               
            Tomcat鎻愪緵涓ょ鏂規硶鍦ㄤ富鏈轟笂鏄犲皠榪欎簺涓漢緗戠珯錛屼富瑕佷嬌鐢ㄤ竴瀵圭壒孌婄殑Listener鍏冪礌銆侺istener鐨刢lassName灞炴у簲璇ユ槸org.apache.catalina.startup.UserConfig錛寀serClass灞炴у簲璇ユ槸鍑犱釜鏄犲皠綾諱箣涓銆傚鏋滀綘鐨勭郴緇熸槸Unix錛屽畠灝嗘湁涓涓爣鍑嗙殑/etc/passwd鏂囦歡錛岃鏂囦歡涓殑甯愬彿鑳藉琚繍琛屼腑鐨凾omcat寰堝鏄撶殑璇誨彇錛岃鏂囦歡鎸囧畾浜嗙敤鎴風殑涓葷洰褰曪紝浣跨敤PasswdUserDatabase
            鏄犲皠綾匯?

<Listener className="org.apache.catalina.startup.UserConfig"
directoryName="public_html"
userClass="org.apache.catalina.startup.PasswdUserDatabase"/>


                web鏂囦歡闇瑕佹斁緗湪鍍?home/users/ian/public_html 鎴栬?
            /users/jbrittain/public_html涓鏍風殑鐩綍涓嬮潰銆傚綋鐒朵綘涔熷彲浠ユ敼鍙榩ublic_html 鍒板叾浠栦換浣曞瓙鐩綍涓嬨?

               
            瀹為檯涓婏紝榪欎釜鐢ㄦ埛鐩綍鏍規湰涓嶄竴瀹氶渶瑕佷綅浜庣敤鎴蜂富鐩綍涓嬮噷闈€傚鏋滀綘娌℃湁涓涓瘑鐮佹枃浠訛紝浣嗕綘鍙堟兂鎶婁竴涓敤鎴峰悕鏄犲皠鍒板叕鍏辯殑鍍?home涓鏍風洰褰曠殑瀛愮洰褰曢噷闈紝鍒欏彲浠ヤ嬌鐢℉omesUserDatabase綾匯?


<Listener className="org.apache.catalina.startup.UserConfig"
directoryName="public_html" homeBase="/home"
userClass="org.apache.catalina.startup.HomesUserDatabase"/>


                榪欐牱涓鏉ワ紝web鏂囦歡灝卞彲浠ヤ綅浜庡儚/home/ian/public_html 鎴栬?
            /home/jasonb/public_html涓鏍風殑鐩綍涓嬨傝繖縐嶅艦寮忓Windows鑰岃█鏇村姞鏈夊埄錛屼綘鍙互浣跨敤涓涓儚c:\home榪欐牱鐨勭洰褰曘?


                榪欎簺Listener鍏冪礌錛屽鏋滃嚭鐜幫紝鍒欏繀欏誨湪Host鍏冪礌閲岄潰錛岃屼笉鑳藉湪context鍏冪礌閲岄潰錛屽洜涓哄畠浠兘鐢ㄥ簲鐢ㄤ簬Host鏈韓銆?

                8錛庡湪Tomcat涓嬌鐢–GI鑴氭湰

                Tomcat涓昏鏄綔涓篠ervlet/JSP瀹瑰櫒錛屼絾瀹冧篃鏈夎澶氫紶緇焪eb鏈嶅姟鍣ㄧ殑鎬ц兘銆傛敮鎸侀氱敤緗戝叧鎺ュ彛錛圕ommon
            Gateway
            Interface錛屽嵆CGI錛夊氨鏄叾涓箣涓錛孋GI鎻愪緵涓緇勬柟娉曞湪鍝嶅簲嫻忚鍣ㄨ姹傛椂榪愯涓浜涙墿灞曠▼搴忋侰GI涔嬫墍浠ヨ縐頒負閫氱敤錛屾槸鍥犱負瀹冭兘鍦ㄥぇ澶氭暟紼嬪簭鎴栬剼鏈腑琚皟鐢紝鍖呮嫭錛歅erl錛孭ython錛宎wk錛孶nix
            shell
            scripting絳夛紝鐢氳嚦鍖呮嫭Java銆傚綋鐒訛紝浣犲ぇ姒備笉浼氭妸涓涓狫ava搴旂敤紼嬪簭褰撲綔CGI鏉ヨ繍琛岋紝姣曠珶榪欐牱澶繃鍘熷銆備竴鑸岃█錛屽紑鍙慡ervlet鎬昏姣擟GI鍏鋒湁鏇村ソ鐨勬晥鐜囷紝鍥犱負褰撶敤鎴風偣鍑諱竴涓摼鎺ユ垨涓涓寜閽椂錛屼綘涓嶉渶瑕佷粠鎿嶄綔緋葷粺灞傚紑濮嬭繘琛屽鐞嗐?


                Tomcat鍖呮嫭涓涓彲閫夌殑CGI Servlet錛屽厑璁鎬綘榪愯閬楃暀涓嬫潵鐨凜GI鑴氭湰銆?

                涓轟簡浣縏omcat鑳藉榪愯CGI錛屼綘蹇呴』鍋氬涓嬪嚑浠朵簨錛?
                1. 鎶妔ervlets-cgi.renametojar
            錛堝湪CATALINA_HOME/server/lib/鐩綍涓嬶級鏀瑰悕涓簊ervlets-cgi.jar銆傚鐞咰GI鐨剆ervlet搴旇浣嶄簬Tomcat鐨凜LASSPATH涓嬨?

                2. 鍦═omcat鐨凜ATALINA_BASE/conf/web.xml 鏂囦歡涓紝鎶婂叧浜?
            CGI鐨勯偅孌電殑娉ㄩ噴鍘繪帀錛堥粯璁ゆ儏鍐典笅錛岃孌典綅浜庣241琛岋級銆?
                3.
            鍚屾牱錛屽湪Tomcat鐨凜ATALINA_BASE/conf/web.xml鏂囦歡涓紝鎶婂叧浜庡CGI榪涜鏄犲皠鐨勯偅孌電殑娉ㄩ噴鍘繪帀錛堥粯璁ゆ儏鍐典笅錛岃孌典綅浜庣299琛岋級銆傛敞鎰忥紝榪欐鍐呭鎸囧畾浜咹TML閾炬帴鍒癈GI鑴氭湰鐨勮闂柟寮忋?

                4. 浣犲彲浠ユ妸CGI鑴氭湰鏀劇疆鍦╓EB-INF/cgi
            鐩綍涓嬶紙娉ㄦ剰錛學EB-INF鏄竴涓畨鍏ㄧ殑鍦版柟錛屼綘鍙互鎶婁竴浜涗笉鎯寵鐢ㄦ埛鐪嬭鎴栧熀浜庡畨鍏ㄨ冭檻涓嶆兂鏆撮湶鐨勬枃浠舵斁鍦ㄦ澶勶級錛屾垨鑰呬綘涔熷彲浠ユ妸CGI鑴氭湰鏀劇疆鍦╟ontext涓嬬殑鍏朵粬鐩綍涓嬶紝騫朵負CGI
            Servlet璋冩暣cgiPathPrefix鍒濆鍖栧弬鏁般傝繖灝辨寚瀹氱殑CGI Servlet鐨勫疄闄呬綅緗紝涓斾笉鑳戒笌涓婁竴姝ユ寚瀹氱殑URL閲嶅悕銆?
                5. 閲嶆柊鍚姩Tomcat錛屼綘鐨凜GI灝卞彲浠ヨ繍琛屼簡銆?

               
            鍦═omcat涓紝CGI紼嬪簭緙虹渷鏀劇疆鍦╓EB-INF/cgi鐩綍涓嬶紝姝e鍓嶉潰鎵鎻愮ず鐨勯偅鏍鳳紝WEB-INF鐩綍鍙椾繚鎶ょ殑錛岄氳繃瀹㈡埛绔殑嫻忚鍣ㄦ棤娉曠鎺㈠埌鍏朵腑鍐呭錛屾墍浠ュ浜庢斁緗惈鏈夊瘑鐮佹垨鍏朵粬鏁忔劅淇℃伅鐨凜GI鑴氭湰鑰岃█錛岃繖鏄竴涓潪甯稿ソ鐨勫湴鏂廣備負浜嗗吋瀹瑰叾浠栨湇鍔″櫒錛屽敖綆′綘涔熷彲浠ユ妸CGI鑴氭湰淇濆瓨鍦ㄤ紶緇熺殑/cgi-bin鐩綍錛屼絾瑕佺煡閬擄紝鍦ㄨ繖浜涚洰褰曚腑鐨勬枃浠舵湁鍙兘琚綉涓婂ソ濂囩殑鍐叉氮鑰呯湅鍒般傚彟澶栵紝鍦║nix涓紝璇風‘瀹氳繍琛孴omcat鐨勭敤鎴鋒湁鎵цCGI鑴氭湰鐨勬潈闄愩?


                9錛庢敼鍙楾omcat涓殑JSP緙栬瘧鍣紙JSP Compiler錛?

                鍦═omcat
            4.1錛堟垨鏇撮珮鐗堟湰錛屽ぇ姒傦級錛孞SP鐨勭紪璇戠敱鍖呭惈鍦═omcat閲岄潰鐨凙nt紼嬪簭鎺у埗鍣ㄧ洿鎺ユ墽琛屻傝繖鍚搗鏉ユ湁涓鐐圭偣濂囨紝浣嗚繖姝f槸Ant鏈夋剰涓轟箣鐨勪竴閮ㄥ垎錛屾湁涓涓狝PI鏂囨。鎸囧寮鍙戣呭湪娌℃湁鍚姩涓涓柊鐨凧VM鐨勬儏鍐典笅錛屼嬌鐢ˋnt銆傝繖鏄嬌鐢ˋnt榪涜Java寮鍙戠殑涓澶т紭鍔褲傚彟澶栵紝榪欎篃鎰忓懗鐫浣犵幇鍦ㄨ兘澶熷湪Ant涓嬌鐢ㄤ換浣昷avac鏀寔鐨勭紪璇戞柟寮忥紝榪欓噷鏈変竴涓叧浜嶢pache
            Ant浣跨敤鎵嬪唽鐨刯avac page鍒楄〃銆備嬌鐢ㄨ搗鏉ユ槸瀹規槗鐨勶紝鍥犱負浣犲彧闇瑕佸湪
            鍏冪礌涓畾涔変竴涓悕瀛楀彨鈥渃ompiler鈥濓紝騫朵笖鍦╲alue涓湁涓涓敮鎸佺紪璇戠殑緙栬瘧鍣ㄥ悕瀛楋紝紺轟緥濡備笅錛?

<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>
org.apache.jasper.servlet.JspServlet
</servlet-class>
<init-param>
<param-name>logVerbosityLevel</param-name>
<param-value>WARNING</param-value>
</init-param>
<init-param>
<param-name>compiler</param-name>
<param-value>jikes</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>


                褰撶劧錛岀粰鍑虹殑緙栬瘧鍣ㄥ繀欏誨凡緇忓畨瑁呭湪浣犵殑緋葷粺涓紝騫朵笖CLASSPATH鍙兘闇瑕佽緗紝閭e鍐充簬浣犻夋嫨鐨勬槸浣曠緙栬瘧鍣ㄣ?

            10錛庨檺鍒剁壒瀹氫富鏈鴻闂紙Restricting Access to Specific Hosts錛?

                鏈夋椂錛屼綘鍙兘鎯抽檺鍒跺Tomcat
            web搴旂敤鐨勮闂紝姣斿錛屼綘甯屾湜鍙湁浣犳寚瀹氱殑涓繪満鎴朓P鍦板潃鍙互璁塊棶浣犵殑搴旂敤銆傝繖鏍蜂竴鏉ワ紝灝卞彧鏈夐偅浜涙寚瀹氱殑鐨勫鎴風鍙互璁塊棶鏈嶅姟鐨勫唴瀹逛簡銆備負浜嗗疄鐜拌繖縐嶆晥鏋滐紝Tomcat鎻愪緵浜嗕袱涓弬鏁頒緵浣犻厤緗細RemoteHostValve
            鍜孯emoteAddrValve銆?

               
            閫氳繃閰嶇疆榪欎袱涓弬鏁幫紝鍙互璁╀綘榪囨護鏉ヨ嚜璇鋒眰鐨勪富鏈烘垨IP鍦板潃錛屽茍鍏佽鎴栨嫆緇濆摢浜涗富鏈?IP銆備笌涔嬬被浼肩殑錛屽湪Apache鐨刪ttpd鏂囦歡閲屾湁瀵規瘡涓洰褰曠殑鍏佽/鎷掔粷鎸囧畾銆?


            渚嬪浣犲彲浠ユ妸Admin Web application璁劇疆鎴愬彧鍏佽鏈湴璁塊棶錛岃緗涓嬶細

<Context path="/path/to/secret_files" ...>
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127.0.0.1" deny=""/>
</Context>


               
            濡傛灉娌℃湁緇欏嚭鍏佽涓繪満鐨勬寚瀹氾紝閭d箞涓庢嫆緇濅富鏈哄尮閰嶇殑涓繪満灝變細琚嫆緇濓紝闄ゆ涔嬪鐨勯兘鏄厑璁哥殑銆備笌涔嬬被浼鹼紝濡傛灉娌℃湁緇欏嚭鎷掔粷涓繪満鐨勬寚瀹氾紝閭d箞涓庡厑璁鎬富鏈哄尮閰嶇殑涓繪満灝變細琚厑璁革紝闄ゆ涔嬪鐨勯兘鏄嫆緇濈殑銆?



嫻瘋醇 2005-08-03 15:00 鍙戣〃璇勮
]]>
杞竴綃囧叧浜嶹eb浜嬩歡鐨勬枃绔? http://www.tkk7.com/pirate/archive/2005/08/03/9124.html嫻瘋醇嫻瘋醇Wed, 03 Aug 2005 06:36:00 GMThttp://www.tkk7.com/pirate/archive/2005/08/03/9124.htmlhttp://www.tkk7.com/pirate/comments/9124.htmlhttp://www.tkk7.com/pirate/archive/2005/08/03/9124.html#Feedback0http://www.tkk7.com/pirate/comments/commentRss/9124.htmlhttp://www.tkk7.com/pirate/services/trackbacks/9124.html姒傝堪錛?/H5>
   鍦⊿ervlet2.3瑙勮寖涓紝Web搴旂敤浜嬩歡鏄柊澧炲姞鐨勯儴鍒嗐傚畠璁╀綘鑳芥渶澶х▼搴﹀湴鎺у埗浣犵殑Web搴旂敤銆傚湪鏈枃涓紝鎴戜滑灝嗗涔犱袱涓緢閲嶈鐨勫簲鐢ㄤ簨浠訛細
  • 搴旂敤鐨勫惎鍔ㄥ拰鍋滄
  • Session鐨勫垱寤哄拰澶辨晥
    濡傚畠浠殑鍚嶅瓧閭f牱錛屽簲鐢ㄥ惎鍔ㄤ簨浠跺彂鐢熷湪浣犵殑搴旂敤絎竴嬈¤servlet瀹瑰櫒瑁呰澆鍜屽惎鍔ㄧ殑鏃跺欙紱鍋滄浜嬩歡鍙戠敓鍦╓eb搴旂敤鍋滄鐨勬椂鍊欍?nbsp;
        Session鍒涘緩浜嬩歡鍙戠敓鍦ㄦ瘡嬈′竴涓柊鐨剆ession鍒涘緩鐨勬椂鍊欙紝綾諱技鍦癝ession澶辨晥浜嬩歡鍙戠敓鍦ㄦ瘡嬈′竴涓猄ession澶辨晥鐨勬椂鍊欍備負浜嗕嬌鐢ㄨ繖浜沇eb搴旂敤浜嬩歡涓轟綘鍋氫簺鏈夌敤鐨勪簨鎯咃紝鎴戜滑蹇呴』鍒涘緩鍜屼嬌鐢ㄤ竴浜涚壒孌婄殑鈥滅洃鍚濈被銆備笅闈紝鎴戜滑灝嗙爺絀惰繖浜涚洃鍚被鍒板湴鏄粈涔堜互鍙婃垜浠浣曞幓浣跨敤瀹冧滑銆?BR> 
    鐩戝惉綾伙細

    瀹冧滑鏄疄鐜頒簡涓嬭竟涓や釜鎺ュ彛涓換浣曚竴涓帴鍙g殑綆鍗曠殑java綾伙細
  • javax.servlet.ServletContextListener 
  • javax.servlet.http.HttpSessionListener  
        濡傛灉浣犳兂璁╀綘鐨勭被鐩戝惉搴旂敤鐨勫惎鍔ㄥ拰鍋滄浜嬩歡錛屼綘灝卞緱瀹炵幇ServletContextListener鎺ュ彛;濡傛灉浣犳兂璁╀綘鐨勭被鍘葷洃鍚琒ession鐨勫垱寤哄拰澶辨晥浜嬩歡錛岄偅浣犲氨寰楀疄鐜癏ttpSessionListener鎺ュ彛銆?nbsp;璁╂垜浠湅鐪嬪湪榪欎簺鎺ュ彛涓綘蹇呴』瑕佸疄鐜扮殑鏂規硶銆?BR>1.ServletContextListener :
    鎺ュ彛鍖呮嫭濡備笅涓や釜鏂規硶錛?BR>
  • public void contextInitialized(ServletContextEvent sce); 
  • public void contextDestroyed(ServletContextEvent sce); 
     
       濡傛灉浣犲疄鐜頒簡涓涓帴鍙o紝閭d綘灝卞繀欏誨疄鐜板畠鎵鏈夌殑鏂規硶銆傚洜姝わ紝濡傛灉浣犳兂鍒╃敤搴旂敤鐨勫惎鍔ㄥ拰鍋滄浜嬩歡錛屼綘灝遍渶瑕佸垱寤轟竴涓狫ava綾誨茍瀹炵幇ServletContextListener鎺ュ彛銆備笅杈規槸榪欐牱鐨勪竴涓被鐨勪緥瀛愶細
     
    /*File : ApplicationWatch.java*/
    import javax.servlet.ServletContextListener;
    import javax.servlet.ServletContextEvent;
    public class ApplicationWatch implements ServletContextListener {
    public static long applicationInitialized = 0L;
    /* 搴旂敤鍚姩浜嬩歡 */
    public void contextInitialized(ServletContextEvent ce) {
    applicationInitialized = System.currentTimeMillis();
    }
    /*搴旂敤鍋滄浜嬩歡 */
    public void contextDestroyed(ServletContextEvent ce) {}
    }

       鍦ㄤ笂杈圭殑浠g爜涓紝ApplicationWatch綾誨疄鐜頒簡ServletContextListener鎺ュ彛銆傚畠瀹炵幇浜嗘帴鍙d腑鐨勪袱涓柟娉曪紝浣嗗彧鐢ㄤ簡鍏朵腑鐨勪竴涓柟娉曪紝鍙︿竴涓柟娉曚腑娌℃湁鍐欎換浣曚唬鐮併傝繖涓被鎶婂簲鐢ㄥ惎鍔ㄧ殑鏃墮棿璁板綍鍦ㄤ竴涓彲浠ヤ粠鍏跺畠搴旂敤綾諱腑瀛樺彇搴旂敤鍚姩鏃墮棿鐨刾ublic static鍙橀噺涓?nbsp;

       鎴戝皢寰堝揩瑙i噴濡備綍鍛婅瘔鏈嶅姟鍣ㄦ垜浠湁榪欎釜鐩戝惉綾伙紝浣嗛鍏堣鎴戜滑鐪嬬湅HttpSessionListener鎺ュ彛鏈変粈涔堜笉鍚岀殑鏂規硶銆?BR>2.HttpSessionListener :
    榪欎釜鎺ュ彛涔熷彧鍖呭惈涓や釜鏂規硶錛屽垎鍒搴斾簬Session鐨勫垱寤哄拰澶辨晥錛?BR>
  • public void sessionCreated(HttpSessionEvent se); 
  • public void sessionDestroyed(HttpSessionEvent se);

       濡備笂杈圭殑ApplicationWatch渚嬪瓙閭f牱錛屾垜浠篃鍒涘緩浜嗕竴涓疄鐜癏ttpSessionListener鎺ュ彛鐨勭被銆傚涓嬶細
    /*File : SessionCounter.java*/
    import javax.servlet.http.HttpSessionListener;
    import javax.servlet.http.HttpSessionEvent;
    public class SessionCounter implements HttpSessionListener {
    private static int activeSessions =0;
    /* Session鍒涘緩浜嬩歡 */
    public void sessionCreated(HttpSessionEvent se) {
           activeSessions++;
    }
    /* Session澶辨晥浜嬩歡 */
    public void sessionDestroyed(HttpSessionEvent se) {
    if(activeSessions>0)activeSessions--;
    }

    public static int getActiveSessions() {
    return activeSessions;
    }
    }

       鍦ㄤ笂杈圭殑浠g爜涓紝SessionCounter綾誨疄鐜頒簡HttpSessionListener鎺ュ彛錛屽叾鐩殑鏄綆楁椿鍔ㄤ細璇濈殑鏁伴噺銆?BR>   濂戒簡錛屾垜浠凡緇忓涔犱簡浠涔堟槸Web搴旂敤浜嬩歡錛屾湁浠涔堟帴鍙e彲浠ョ敤浠ュ強鐪嬪埌浜嗕竴浜涘疄鐜拌繖浜涙帴鍙g殑渚嬪瓙銆傝鎴戜滑鐪嬬湅濡備綍鍛婅瘔搴旂敤鏈嶅姟鍣ㄦ垜浠湁榪欎簺鐩戝惉綾匯?BR>
    Web.xml :

       鎴戜滑閫氳繃鎶婄被璺緞鍔犲叆/WEB-INF/web.xml鏂囦歡鐨勬爣絳?lt;listener>涓潵鍛婅瘔鏈嶅姟鍣ㄦ垜浠殑鐩戝惉綾匯備笅杈規槸涓涓獁eb.xml鏂囦歡鐨勪緥瀛愶細
    <!-- Web.xml -->
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-appPUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN""http://java.sun.com/j2ee/dtds/web-app_2.3.dtd">
    <web-app>
    <!-- Listeners -->
    <listener>
    <listener-class>
    com.stardeveloper.web.listener.SessionCounter
    </listener-class>
    </listener>
    <listener>
    <listener-class>
    com.stardeveloper.web.listener.ApplicationWatch</listener-class>
    </listener>
    </web-app>
       濡備笂鎵紺猴紝鍦╳eb.xml鏂囦歡涓0鏄庣洃鍚被鏄潪甯哥畝鍗曠殑銆傜幇鍦紝姣忔鐨勬湇鍔″櫒鐨勫惎鍔ㄥ拰鍋滄錛屼細璇濈殑鍒涘緩鍜屽け鏁堬紝閰嶇疆濂界殑鐩戝惉綾葷殑鐩稿簲鐨勬柟娉曞氨浼氳璋冪敤銆傚氨榪欎箞綆鍗曪紒

    鎬葷粨錛?/H5>
       鍦ㄦ湰鏂囦腑鎴戜滑瀛︿範浜嗕粈涔堟槸Web搴旂敤浜嬩歡鍜屾垜浠浣曢氳繃鍒涘緩鐗規畩鐨勨滅洃鍚濈被鏉ヤ嬌鐢ㄥ畠浠備箣鍚庢垜浠垎鍒垱寤轟簡涓や釜瀹炵幇浜哠ervletContextListener鍜孒ttpSessionListener鎺ュ彛鐨勭被銆傛垜浠篃瀛︿範浜嗗浣曞湪web.xml鏂囦歡涓嬌鐢ㄤ笓闂ㄧ殑<listener>鍜?lt;listener-class>鏍囩鏉ュ0鏄庤繖浜涚洃鍚被銆?BR>


  • 嫻瘋醇 2005-08-03 14:36 鍙戣〃璇勮
    ]]>
    java涓璖tring,Integer,int涔嬮棿杞崲http://www.tkk7.com/pirate/archive/2005/07/27/8549.html嫻瘋醇嫻瘋醇Wed, 27 Jul 2005 07:00:00 GMThttp://www.tkk7.com/pirate/archive/2005/07/27/8549.htmlhttp://www.tkk7.com/pirate/comments/8549.htmlhttp://www.tkk7.com/pirate/archive/2005/07/27/8549.html#Feedback0http://www.tkk7.com/pirate/comments/commentRss/8549.htmlhttp://www.tkk7.com/pirate/services/trackbacks/8549.htmlString,Integer,int涔嬮棿杞崲

    String <- int        ""+int;
    String <- Integer _Integer.toString();

    int <- Integer  _Integer.intValue();
    int <- String  Integer.parseInt(_str);

    Integer <- String    new Integer(Integer.parseInt(_str));
    Integer <- int       new Ingeger(_int);

    鍏朵粬杞崲綾諱技銆?/P>

    嫻瘋醇 2005-07-27 15:00 鍙戣〃璇勮
    ]]>
    主站蜘蛛池模板: 亚洲V无码一区二区三区四区观看| 日本中文一区二区三区亚洲| 亚洲视频在线观看不卡| 99ri精品国产亚洲| 久久久久久久久久国产精品免费 | 午夜视频在线免费观看| 久久青草亚洲AV无码麻豆| 国产猛男猛女超爽免费视频| 午夜老司机免费视频| 亚洲AV香蕉一区区二区三区| 国产成人免费a在线视频app| 亚洲成a人片在线观| 最近2019中文字幕免费看最新| 亚洲色成人WWW永久在线观看| 91青青国产在线观看免费| 亚洲最大的视频网站| 好大好硬好爽免费视频| 美女18毛片免费视频| 国产综合亚洲专区在线| 羞羞视频免费网站含羞草| 亚洲中文无韩国r级电影 | 亚洲精品无码久久久久sm| 成人av片无码免费天天看| 免费欧洲美女牲交视频| 亚洲午夜无码毛片av久久京东热| 午夜一级免费视频| 在线播放免费人成视频网站| 国产禁女女网站免费看| 一区二区三区在线免费观看视频 | 亚洲一区二区三区精品视频| 在线观看免费国产视频| 久久免费99精品国产自在现线| 亚洲成aⅴ人片久青草影院| 亚洲AV无码片一区二区三区| 亚洲综合久久夜AV | 114级毛片免费观看| 亚洲国产精久久久久久久| 精品免费视在线观看| 亚洲制服丝袜中文字幕| 性盈盈影院免费视频观看在线一区| 猫咪www免费人成网站|