亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問(wèn)板塊 發(fā)新帖
查看: 5272 | 回復(fù): 1
打印 上一主題 下一主題

Apache安裝及jboss部署說(shuō)明文檔 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2007-09-03 09:57 |只看該作者 |倒序?yàn)g覽

Apache安裝及jboss部署說(shuō)明文檔
  本文檔描述了apache web服務(wù)器安裝以及常用的編譯模式;描述了apache+jboss3.2.6做負(fù)載均衡(load balance)的部署細(xì)節(jié)以及一些常見錯(cuò)誤說(shuō)明;描述了部署jboss3.2.3/3.2.6時(shí)一些心得、常用配置項(xiàng)。
A.參考文獻(xiàn)
  
http://httpd.apache.org/docs/2.0/
  
http://tomcat.apache.org/connectors-doc/
  
http://www.jboss.com
  
http://www.sun.com
  
http://logging.apache.org/log4j/docs/
  
http://www.oreilly.com
目 錄
1 .Apache2.0及連接器jk1.2的編譯部署... 1
1.1下載相關(guān)軟件包... 1
1.2 apache2.0的編譯安裝... 2
1.3 jk1.2.14的編譯安裝... 3
1.4 apache及jk1.2的參數(shù)配置... 3
1.4.1.httpd.conf的修改... 3
1.4.2.mod_jk2.conf的所有內(nèi)容... 4
1.4.3.workers2.properties的所有內(nèi)容... 4
1.5 apache服務(wù)的啟動(dòng)和停止... 5
2.JBOSS3.2.3/3.2.6部署及配置修改... 5
2.0 FOR NEW USER. 5
2.0.1 JBOSS 的一點(diǎn)說(shuō)明... 5
2.0.1 JBOSS常用配置文件的路徑... 5
2.1 JBOSS      應(yīng)用程序的下載及安裝... 6
2.2 JBOSS      應(yīng)用程序的配置調(diào)整... 6
2.2.1配置負(fù)載均衡,調(diào)整參數(shù)... 6
2.2.2配置集群(Clustering),調(diào)整參數(shù)... 7
2.2.3配置數(shù)據(jù)源,調(diào)整參數(shù)... 7
2.2.4配置jboss Connector參數(shù)... 8
2.2.5訪問(wèn)URL如果是目錄,不想顯示該目錄下文件... 9
2.2.6設(shè)置某個(gè)應(yīng)用APP為默認(rèn)應(yīng)用... 9
2.2.7配置數(shù)據(jù)源在APP應(yīng)用加載前有效(各相關(guān)服務(wù)加載完畢) 10
2.2.8日志配置,配置log4j.xml 11
2.2.9配置contentType及charset,TOMCAT5.0下JSP統(tǒng)一配置... 12
2.3 JVM最小、最大內(nèi)存的設(shè)定... 13
2.4 OS字符集問(wèn)題... 13
2.5 JBOSS服務(wù)的啟動(dòng)、停止... 13
3.附apache https 服務(wù)器的安裝... 14
1 .Apache2.0及連接器jk1.2的編譯部署1.1下載相關(guān)軟件包
  我們需要軟件及其版本說(shuō)明:
a)   apache服務(wù)器:httpd-2.0.54
  下載地址:
http://httpd.apache.org/download.cgi
b)apache/tomcat連接器:jk1.2.14,
  這里選用1.2.*版本,雖然有jk2.0,但據(jù)相關(guān)文檔介紹,jk2.0已不再開發(fā),而jk1.2.*版本使用范圍很廣,久經(jīng)考驗(yàn)了,穩(wěn)定性有保障.兩個(gè)版本系列對(duì)應(yīng)的配置也有很大的變化,故而這里選用jk1.2系列,下載地址:
  
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.14/
  安裝apache本文檔依據(jù)的版本是httpd-2.0.54,下載Unix Source,下文介紹主要以linux OS為主,間或會(huì)介紹一點(diǎn)windows下安裝的細(xì)節(jié)。
  我們的目標(biāo)是用apache來(lái)做前端的web服務(wù)器,后端用jboss3.2.6,實(shí)現(xiàn)負(fù)載均衡。
1.2 apache2.0的編譯安裝
  下載完源程序包之后,放到一個(gè)臨時(shí)目錄中,如 /home/software/:
  
CODE:[Copy to clipboard]#cd /home/software/
  #tar zxvf httpd-2.0.54.tar.gz
  #cd /home/software/httpd-2.0.54
  #./configure --enable-MODULE=shared   --enable-so --with-mpm=worker
  #make
  #make install
參數(shù)解釋:
  --enable-MODULE=shared :該參數(shù)是使得相關(guān)的模塊編譯為可動(dòng)態(tài)加載模塊(DSO模式),如果不選用該選項(xiàng),apache默認(rèn)的選項(xiàng)是: --enable-MODULE=static,表示將相關(guān)的模塊靜態(tài)編譯。
  兩者的區(qū)別是:前者使得可以需要更新、重編譯某模塊(核心模塊不受限于這種模式,如core、mod_so)時(shí),只需單獨(dú)編譯該模塊即可,而不需重新編譯整個(gè)apache source code,做到單獨(dú)升級(jí)。前者弊端是導(dǎo)致apache啟動(dòng)時(shí)慢20%左右,在運(yùn)行階段慢5%左右,另外DSO模式不是所有OS都支持的,和軟件環(huán)境有關(guān)系。
  --enable-so  :該參數(shù)表示支持用mod_so模塊提供的功能,用LoadModule在httpd.conf文件或包含的conf文件中動(dòng)態(tài)加載某個(gè)模塊。
  --with-mpm=worker   :該參數(shù)是配置apache將以何種模式編譯的。Apache網(wǎng)站文檔指出不同操作系統(tǒng)下的不同的默認(rèn)模式.
  在安裝完apache后,在類unix OS下,可以在./bin目錄下用./httpd –l 來(lái)看到編譯時(shí)指定的mpm參數(shù),他們對(duì)應(yīng)著不同的.c模塊。
  在windows環(huán)境下,可以用./bin/Apache –l 來(lái)查看相關(guān)被編譯的模塊。Win環(huán)境下默認(rèn)是 mpm_winnt,則可以看到:
CODE:[Copy to clipboard]C:\Apache Group\Apache2\bin>apache -l
Compiled in modules:
  core.c
  mod_win32.c
  mpm_winnt.c
  http_core.c
  mod_so.c
  各模式的區(qū)別,更具體的描述請(qǐng)參見
http://httpd.apache.org/docs/2.0/mpm.html
,下面只簡(jiǎn)單說(shuō)明一下,worker模式是以process/thread混和模式運(yùn)行的,如果WEB服務(wù)器的期望負(fù)載較大的話,則推薦使用worker模式,如果需要一個(gè)穩(wěn)定性考慮為優(yōu)先的服務(wù)器的話,推薦使用prefork模式,同樣的負(fù)載條件下,prefork模式的apache占用的內(nèi)存會(huì)大很多。

  默認(rèn)安裝的路徑為: /usr/local/apache2/,如果要指定安裝路徑,則用參數(shù)./configure --prefix=PREFIX來(lái)指定安裝路徑,PREFIX為指定的絕對(duì)路徑。
  可以用PREFIX/bin/apachectl start 來(lái)測(cè)試是否可以正常啟動(dòng)服務(wù)。
  可以用PREFIX/bin/httpd –t來(lái)測(cè)試http.conf的語(yǔ)法是否合法。
1.3 jk1.2.14的編譯安裝
  下載完源程序包之后,放到一個(gè)臨時(shí)目錄中,如 /home/software/:
CODE:[Copy to clipboard]1、#cd /home/software/
2、#tar zxvf jakarta-tomcat-connectors-1.2.14.1-src.tar.gz
3、#cd /home/software/jakarta-tomcat-connectors-1.2.14.1-src/jk/native
4、# ./configure --with-apxs=/usr/local/apache2/bin/apxs
5、#make
6、# cp ./apache-2.0/mod_jk.so /usr/local/apache2/modules
  查看…/native目錄,會(huì)看到有apache-1.3以及apache-2.0目錄,在第4步,用--with-apxs參數(shù)來(lái)指定擴(kuò)展程序apxs的位置,make程序會(huì)根據(jù)提供的apxs的版本來(lái)辨別需要針對(duì)apache的哪個(gè)版本來(lái)生成mod_jk.so,如本文所示例,程序?qū)⒅佬枰獮閍pache2.0生成mod_jk.so,因此編譯工作將會(huì)在...jk/native/apache-2.0中進(jìn)行,瀏覽編譯日志信息會(huì)看到這些信息。
  第6步是將編譯后的so拷貝至apache的安裝路徑的modules目錄中,應(yīng)該根據(jù)安裝路徑去調(diào)整上述腳本中的路徑。
  另外可以將mod_jk.so靜態(tài)連接到apache2.0中,然后再一次編譯apache2.0,在上述腳本中加上參數(shù):

CODE:[Copy to clipboard]./configure --with-apache=/home/software/httpd-2.0.54
  具體請(qǐng)參閱:http://tomcat.apache.org/connectors-doc/howto/apache.html
  以上工作就算結(jié)束了編譯、安裝工作,下面將進(jìn)行參數(shù)調(diào)整,部署工作。
1.4 apache及jk1.2的參數(shù)配置
1.4.1.httpd.conf的修改
  該文件的路徑位于$APACHE-HOME/conf
  上述編譯過(guò)程中我們選用的worker模式,因此我們將修改worker模塊的配置
QUOTE:
StartServers         4    #最初建立進(jìn)程的數(shù)量
ServerLimit         24   #進(jìn)程建立的最大數(shù)量,硬限制
ThreadLimit         128  #每一進(jìn)程能創(chuàng)建線程的最大數(shù)量,硬限制,該參數(shù)建議#和ThreadsPerChild一致,如果ThreadLimit > ThreadsPerChild的話,會(huì)造成不##必要的內(nèi)存消耗。
MaxClients         3072  #同時(shí)可以得到處理的客戶端的最大數(shù)量
MinSpareThreads    100   #所有進(jìn)程中空閑線程的總數(shù)最小數(shù)值
MaxSpareThreads    200   #所有進(jìn)程中空閑線程的總數(shù)最大數(shù)值
ThreadsPerChild     128   #每個(gè)子進(jìn)程可以建立的固定數(shù)量的線程
MaxRequestsPerChild  0    #用于控制服務(wù)器建立和結(jié)束進(jìn)程的頻率,為0表示沒(méi)有#限制,但在solaris OS下該值可能會(huì)出錯(cuò),可以設(shè)置為1000或2000。根據(jù)系統(tǒng)#的并發(fā)負(fù)載吧。
  在httpd.conf文件的最后一行加上:Include conf/mod_jk2.conf
  另外還需修改#ServerName
www.example.com:80
為ServerName 127.0.0.1:80
1.4.2.mod_jk2.conf的所有內(nèi)容
  新建該文件,并將該文件置于$APACHE-HOME/conf
QUOTE:
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers2.properties
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
JkMount /* loadbalancer
#apache will serve the static picture.
#以下命令意味著所有的圖片將由APACHE解析
QUOTE:
JkUnMount /*.jpg loadbalancer  
JkUnMount /*.gif loadbalancer
JkUnMount /*.swf loadbalancer
JkUnMount /*.bmp loadbalancer
JkUnMount /*.png loadbalancer
  在上述配置中,是配置所有圖片由APACHE來(lái)解析,因此我們需要將項(xiàng)目中的所有圖片均拷貝到$APACHE-HOME/htdocs/下,如果你的部署的項(xiàng)目(應(yīng)用),在訪問(wèn)時(shí)需要輸入前綴,如
http://www.DDD.com/TestCrm/login.do
,則請(qǐng)注意,在$APACHE-HOME/htdocs/下需要建一個(gè)目錄“TestCrm”,然后按照你項(xiàng)目中圖片所在的路徑,連同路徑中所有目錄一并考入TestCrm目錄,例如你的圖片位于
  …./TestCrm.war/images/1.jpg,那么為了APACHE能找到圖片,則你在APACHE中的圖片位置應(yīng)是$APACHE-HOME/htdocs/TestCrm/images/1.jpg。
1.4.3.workers2.properties的所有內(nèi)容
  新建該文件,并將該文件置于$APACHE-HOME/conf
  請(qǐng)注意:下列配置中的server105,server106等紫色的斜體字符串都是根據(jù)部署的jboss的信息來(lái)部署的,其中server105,server106需要在jboss的相關(guān)配置中修改,具體詳見下文介紹。對(duì)應(yīng)的IP地址應(yīng)改為JBOSS所在的server IP。
  #以下為workers2.propertie的內(nèi)容
QUOTE:
worker.list=loadbalancer,server105,server106
# Define the first node...
worker.server105.port=8009
worker.server105.host=192.10.12.105
worker.server105.type=ajp13
worker.server105.lbfactor=1
#worker.server105.local_worker=1
worker.server105.cachesize=100
# Define the 2nd node...
worker.server106.port=8009
worker.server106.host=192.10.12.106
worker.server106.type=ajp13
worker.server106.lbfactor=1
#worker.server106.local_worker=1
worker.server106.cachesize=100  
# Now we define the load-balancing behaviour
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=server105,server106
worker.loadbalancer.sticky_session=1
  說(shuō)明:worker.loadbalancer.sticky_session=1參數(shù)的設(shè)定,意味著一旦用戶通過(guò)APACHE連接到某臺(tái)JBOSS SERVER(創(chuàng)建了session),則只要在該臺(tái)JBOSS服務(wù)正常的情況下,該用戶所有的請(qǐng)求都將會(huì)發(fā)送至該JBOSS SERVER。
1.5 apache服務(wù)的啟動(dòng)和停止
QUOTE:
/usr/local/apache2/bin/apachectl start
  /usr/local/apache2/bin/apachectl stop
  如果啟動(dòng)時(shí)報(bào)錯(cuò),提示80端口被綁定,請(qǐng)注意有可能是在裝linux OS時(shí)選裝了apache并且啟動(dòng)了服務(wù),請(qǐng)直接在命令行用apachectl stop ,停止原先的服務(wù),其存在路徑一般為/usr/sbin/apachectl
2.JBOSS3.2.3/3.2.6部署及配置修改
2.0 FOR NEW USER
2.0.1 JBOSS 的一點(diǎn)說(shuō)明
  $JBOSS-HOME/server/下有3個(gè)目錄,all/default/minimal,它們是表示3種配置,全部的配置、默認(rèn)配置、最小配置,我們?cè)趩?dòng)JBOSS服務(wù)時(shí),可以指定
  run –c all 表示是啟動(dòng)all配置(將會(huì)加載所有服務(wù));run 表示是以默認(rèn)配置啟動(dòng);
  run –c mimimal  表示是啟動(dòng)mimimal配置。這三者所加載的服務(wù)數(shù)量不同,具體區(qū)別可查閱JBOSS相關(guān)文檔,你還可以自己定義一個(gè)配置,如test,屬于高手去為了性能上的考慮了,那這份文檔對(duì)你的幫助不會(huì)太大了。
  如果你確定了JBOSS服務(wù)啟動(dòng)的配置,那么你的應(yīng)用及相關(guān)配置就需要部署在對(duì)應(yīng)的目錄下的相關(guān)的路徑下,如all/,default/,minimal/下。
2.0.1 JBOSS常用配置文件的路徑
  為了描述方便,以下描述將以JBOSS3.2.6版本,default配置為例,如果你以別的配置啟動(dòng),則在對(duì)應(yīng)的目錄下尋找或配置相關(guān)文件。
  1、相關(guān)DTD定義文件位于$JBOSS-HOME/docs/dtd,在其下的文件中可以查閱某個(gè)XML配置文件中某個(gè)元素或?qū)傩缘囊饬x。
  2、數(shù)據(jù)源配置文件的路徑,$JBOSS-HOME/server/default/deploy,文件格式必須是*-ds.xml的樣式。不同的數(shù)據(jù)庫(kù)配置參數(shù)可參考$JBOSS-HOME/docs/examples/jca/下的示例文檔。有關(guān)參數(shù)的細(xì)節(jié)在下面會(huì)有一定的描述。
  3、公共的jar包我們可以放在$JBOSS-HOME/server/default/lib下,如數(shù)據(jù)庫(kù)的JDBC jar,log4j.jar等,如果這些JAR已經(jīng)在該lib下放置了,那么我們的應(yīng)用WEB-INF/lib下不應(yīng)該再放置,否則JBOSS也會(huì)將他們?cè)僖淮渭虞d,白白占用內(nèi)存。
  4、配置日志的文件,log4j.xml位于$JBOSS-HOME/server/default/conf下,具體配置下文還會(huì)有一點(diǎn)介紹
 
  5、$JBOSS-HOME/server/default/work下存放的是JSP編譯后的.java及.class文件,如果調(diào)試JSP時(shí)出錯(cuò)了,可以到該目錄下(一級(jí)級(jí)去翻吧)去找對(duì)應(yīng)的文件,調(diào)試問(wèn)題。還有個(gè)小TIPS,有時(shí)我們明明把一個(gè)JSP更新到對(duì)應(yīng)的目錄里了,可是去刷新頁(yè)面時(shí),內(nèi)容還是舊的,為了解決該問(wèn)題,我們可以到work目錄下,將對(duì)應(yīng)的.java及.class文件刪了,再刷新即可,這個(gè)原因不好推測(cè),有時(shí)可以自動(dòng)刷新,有時(shí)不行。單個(gè)的TOMCAT都能自動(dòng)刷新,不知為何集成到JBOSS里卻有時(shí)不行。還需注意的事,你在清除舊的java、class文件時(shí),不能為了省事,而直接刪除目錄,否則刷新時(shí)會(huì)報(bào)錯(cuò)的,等著你的就是要重啟JBOSS服務(wù)了。
  6、$JBOSS-HOME/server/default/log下存放的是日志文件,默認(rèn)的log4j.xml配置是將日志輸出到該文件夾下的server.log文件,可以去查看信息進(jìn)行調(diào)試。
  7、我們的應(yīng)用一般部署在$JBOSS-HOME/server/default/deploy/jbossweb-tomcat50.sar/下,建個(gè)TestCrm.war目錄,把我們的整個(gè)應(yīng)用部署在該.war目錄下,這樣JSP、Servlet將由tomcat引擎來(lái)解析處理。
  8、配置應(yīng)用的WEB服務(wù)的端口號(hào)及參數(shù)。
  JBOSS3.2.6是在…./ deploy/jbossweb-tomcat50.sar/server.xml中,自己找8080,修改為你想設(shè)定的端口即可。
  JBOSS3.2.3是在…/default/deploy/jbossweb-tomcat41.sar/META-INF/jboss-service.xml中配置。
2.1 JBOSS  應(yīng)用程序的下載及安裝
  前往
http://www.jboss.com
去下載相應(yīng)的版本。直接解壓到相關(guān)的目錄即可。
2.2 JBOSS  應(yīng)用程序的配置調(diào)整
2.2.1配置負(fù)載均衡,調(diào)整參數(shù)
需要修改配置文件以適應(yīng)apache中配置的“session sticky配置”。如下:
Jboss3.2.3修改:
QUOTE:
%JBOSS_HOME%/server/default/deploy/jbossweb-tomcat41.sar/META-INF/ jboss-service.xml
修改為
與上述workers2.properties定義的內(nèi)容一致。
Jboss3.2.6修改:
QUOTE:
%JBOSS_HOME%/server/default/deploy/jbossweb-tomcat50.sar/server.xml
修改為:
與上述workers2.properties定義的內(nèi)容一致。
Jboss4.0的修改和Jboss3.2.6的一致。
如上配置后,就可以實(shí)現(xiàn)apache+jboss的負(fù)載均衡。
2.2.2配置集群(Clustering),調(diào)整參數(shù)
  如果我們要想使得幾臺(tái)JBOSS應(yīng)用服務(wù)器互為備份(僅限于SESSION),在群內(nèi)一臺(tái)JBOSS服務(wù)器down掉的時(shí)候,用戶不受影響,繼續(xù)以登陸用戶身份進(jìn)行工作,則我們需要配置Clustering,并啟動(dòng)相關(guān)服務(wù)。下面將描述相關(guān)配置項(xiàng):
1)、修改應(yīng)用APP的web.xml:
Jboss3.2.6:
QUOTE:
../default/deploy/jbossweb-tomcat50.sar/Test.war/WEB-INF/web.xml
Jboss3.2.3:
QUOTE:
../default/deploy/jbossweb-tomcat41.sar/Test.war/WEB-INF/web.xml
修改內(nèi)容如下:
QUOTE:
…….
…..
….
2)、需要啟動(dòng)一個(gè)服務(wù)cluster-service.xml
如果是以run -c all 來(lái)啟動(dòng)jboss服務(wù),則默認(rèn)是將cluster服務(wù)啟動(dòng),無(wú)需做什么配置工作,只需確認(rèn)相關(guān)文件是否存在即可。
確認(rèn)…/server/all/deploy/下存在cluster-service.xml文件;
確認(rèn)…/server/all/lib/下存在jgroups.jar文件,如果沒(méi)有則重新安裝jboss。
如果應(yīng)用程序部署在default配置下,則需將上述的兩個(gè)文件分別拷入
…/server/default/deploy/、…/server/default/lib/目錄下。
配置完畢,如有異常,請(qǐng)查看日志。更詳細(xì)的信息請(qǐng)參閱JBOSS.com上提供的admin.pdf。
2.2.3配置數(shù)據(jù)源,調(diào)整參數(shù)
各種類型的數(shù)據(jù)庫(kù),都可以根據(jù)%JBOSS_HOME%/docs/examples/jca/下的示例文檔配置,更詳細(xì)的參數(shù)配置可參閱JBOSS.com上的文檔或…/docs/dtd/下的dtd定義來(lái)配置。
下面以oracle為例,提供我們?cè)谏a(chǎn)機(jī)環(huán)境的配置。
該xml文件需要被部署在%JBOSS_HOME%/server/all(or default)/deploy/下,對(duì)應(yīng)的數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序jar需copy至部署的配置的lib下,如…all/lib/或…default/lib/下。
  
    jdbc/TestDataSource
    jdbcracle:thin192.168.1.2:1521:test
    jdbcracleciyouroracle-tns-name-->
    oracle.jdbc.driver.OracleDriver
    test
test
   
    org.jboss.resource.adapter.jdbc.vendor.OracleValidConnectionChecker
   
org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter
        
        some arbitrary sql
        -->
    5
    800
    5
    select 1 from dual
  

如有多個(gè)數(shù)據(jù)源,則根據(jù)數(shù)據(jù)庫(kù)的類型,配置完成,部署在上述路徑下即可。

在代碼中可通過(guò)JNDI來(lái)從連接池中獲取連接。
……
Context ctx = new javax.naming.InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:jdbc/TestDataSource ");
Connection con = ds.getConnection();
……

2.2.4配置jboss Connector參數(shù)
以下的配置是介紹load balancing所使用的協(xié)議(AJP 1.3 Connector)的服務(wù),
更準(zhǔn)確的有效參數(shù)以及HTTP/1.1 Connector的配置。
請(qǐng)參閱:
http://tomcat.apache.org/tomcat-5.0-doc/config/ajp.html
http://tomcat.apache.org/tomcat-5.0-doc/config/http.html

jboss3.2.3配置…/jbossweb-tomcat41.sar/META-INF/jboss-service.xml,jboss3.2.6配置…./jbossweb-tomcat50.sar/server.xml
address="${jboss.bind.address}" port="8009" minProcessors="5" maxProcessors="1000" enableLookups="true" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" useURIValidationHack="false"
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>

enableLookups="false" redirectPort="8443" debug="0"
maxProcessors ="1000" minProcessors=”5” acceptCount="100"
protocol="AJP/1.3"/>
簡(jiǎn)單解釋一兩個(gè)參數(shù)(以tomcat5.0為準(zhǔn)):
maxProcessors:最大并發(fā)數(shù)(連接數(shù))
minProcessors:初始化時(shí)啟動(dòng)的最小的進(jìn)程數(shù)
acceptCount:在當(dāng)前connector的連接數(shù)達(dá)到最大時(shí),允許進(jìn)入等待隊(duì)列的數(shù)目
connectionTimeout:連接超時(shí)時(shí)間,單位為毫秒
enableLookups:是否允許通過(guò)DNS lookups,返回遠(yuǎn)程客戶端的機(jī)器名,如果設(shè)為false,則只能返回IP地址。該參數(shù)默認(rèn)為true,如果不需要,可以禁掉,設(shè)為false,可以提高服務(wù)器的性能
maxPostSize:設(shè)定允許透過(guò)POST上傳參數(shù)的字節(jié)數(shù),默認(rèn)是2M(2097152),如果想禁掉該限制,則將該值設(shè)為一個(gè)小于或等于0 的值,如0、-1,如果所部署的應(yīng)用中有上傳工作,則需注意該配置
port="8009":這個(gè)值要與上述”1.4.3.workers2.properties”中的port一致
redirectPort="8443":是制定如果用了SSL機(jī)制訪問(wèn)服務(wù)的話,將會(huì)轉(zhuǎn)向的端口,請(qǐng)參閱SSL相關(guān)的配置文檔。
debug="0":這是配置日志級(jí)別的,可以忽略,因?yàn)樵撛O(shè)置依賴于log4j的配置文件的設(shè)置,server/all/conf/log4j.xml
2.2.5訪問(wèn)URL如果是目錄,不想顯示該目錄下文件
jboss3.2.3:
修改…/server/all(or default)/deploy/….sar/web.xml
jboss3.2.6/jboss4.0:
修改…/server/all(or default)/deploy/….sar/conf/web.xml
查看紫色斜體字符,設(shè)為false表示不列出目錄。默認(rèn)是設(shè)為true
default
org.apache.catalina.servlets.DefaultServlet
debug
0
listings
false
1

2.2.6設(shè)置某個(gè)應(yīng)用APP為默認(rèn)應(yīng)用
通常情況下,如果我們部署的應(yīng)用目錄為…/server/all(or default)/deploy/….sar/Test.war/,則我們應(yīng)用部署完后,我們?cè)L問(wèn)的路徑類似于:
http://…./Test/index.htm
,如果我們想去掉Test這個(gè)APP Name,則如下設(shè)置即可。
在你需要設(shè)為默認(rèn)應(yīng)用的那個(gè)war目錄,如上述Test.war/WEB-INF/ 下新建一個(gè)文件,文件名為jboss-web.xml,內(nèi)容如下:
/

重啟服務(wù)后,以
http://…./index.htm
即可訪問(wèn)部署于Test.war/下的應(yīng)用。
2.2.7配置數(shù)據(jù)源在APP應(yīng)用加載前有效(各相關(guān)服務(wù)加載完畢)
這個(gè)經(jīng)驗(yàn)的獲知花費(fèi)了一周多,后來(lái)結(jié)合jboss wiki/forum的文檔,有了靈感,才得以解決。詳細(xì)的介紹可參閱下面帖子,這是我發(fā)的一個(gè)求助帖,后來(lái)自己給解決后把答案貼上了。
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=70600
http://www.javaworld.com.tw/jute/post/view?bid=9&id=129747&sty=1&tpg=1&age=0
(中文)

以下簡(jiǎn)略說(shuō)明一下。
我們部署一個(gè)應(yīng)用(項(xiàng)目),應(yīng)用啟動(dòng)之初一般都進(jìn)行若干初始化吧,可能會(huì)從文件里、數(shù)據(jù)庫(kù)里獲取一些基礎(chǔ)數(shù)據(jù)或配置項(xiàng)等等。
如果從數(shù)據(jù)庫(kù)里獲取基礎(chǔ)數(shù)據(jù),則我們必須確保配置的那些數(shù)據(jù)源及相關(guān)的服務(wù)在我們應(yīng)用開始加載之前生效(已經(jīng)啟動(dòng)或加載完畢);也就是說(shuō),在我們部署應(yīng)用的一些初始化數(shù)據(jù)方法里要能正常獲取數(shù)據(jù)。如果你不做一些設(shè)置,僅僅是將配好的ds_oracle_test.xml扔到…/deploy/下,那么很遺憾的告訴你,你的應(yīng)用在初始化數(shù)據(jù)階段根本不能從連接池中獲取到連接,進(jìn)而獲取數(shù)據(jù)。如要達(dá)到你初始化數(shù)據(jù)的目的,請(qǐng)按照上面我提供的那個(gè)帖子連接去查看詳細(xì)的信息,下面我僅提供解決方法。
1)、配置數(shù)據(jù)源:



jdbc/test
2)確認(rèn)datasource依賴的服務(wù)名
透過(guò)
http://wiki.jboss.org/wiki/Wiki.jsp?page=DependOnDataSource
我們發(fā)現(xiàn):
======原文引用==============
! Depending on a DataSource
To specify a dependency on a DataSource deployment, you need to depend on the service which binds the DataSource into JNDI.
The DataSource is not bound into JNDI until the service jboss.jca:service=DataSourceBinding,name=(jndi-name) has been
started. The (jndi-name) is the value of the jndi-name attribute for your DataSource as defined in the *-ds.xml.
The associated connection manager service is a function of the type of DataSource and its jndi-name attribute value. The
MBean names for the types of DataSource deployments are:
1
2
3
4
5
6
7
8
9
10
no-tx-datasource
jboss.jca:service=NoTxCM?,name=(jndi-name)
local-tx-datasource
jboss.jca:service=LocalTxCM?,name=(jndi-name)
xa-datasource
jboss.jca:service=XATxCM?,name=(jndi-name)
no-tx-connection-factory
jboss.jca:service=NoTxCM?,name=(jndi-name)
tx-connection-factory
jboss.jca:service=TxCM?,name=(jndi-name)

     通過(guò)上述描述可以知道,數(shù)據(jù)源配置不同,則對(duì)應(yīng)的依賴服務(wù)名信息也不同。
     根據(jù)上述描述及數(shù)據(jù)源配置,相關(guān)的服務(wù)名就是:
"jboss.jca:service=LocalTxCM,name=jdbc/test".
我修改了 ...sar/...war/WEB-INF/jboss-web.xml(如果不存在該文件,就創(chuàng)建它),然后運(yùn)行jboss,就可以在初始化時(shí)找到datasource,并正確獲取數(shù)據(jù)了!!!
配置文件如下:
1
2
3
  
  jboss.jca:service=LocalTxCM,name=jdbc/test
  


2.2.8日志配置,配置log4j.xml
JBOSS的日志模塊集成了強(qiáng)大的LOG4J組件,我們可以直接配置$JBOSS_HOME/server/default/conf/log4j.xml,來(lái)定義日志級(jí)別或是將某幾個(gè)類的日志輸出到一個(gè)單獨(dú)的文件。
以下簡(jiǎn)單羅列一下配置文件,具體的LOG4J的使用請(qǐng)參閱LOG4J文檔或JBOSS的文檔。
   
      
      
      

      
      
      
         
         
      
   

   
   
   
  

   
     
     
   

category或logger的寫法都可以,建議用最下面的寫法,這是文檔中的標(biāo)準(zhǔn)寫法。
上面的最后兩個(gè)代碼塊,表示所列的兩個(gè)ACTION將會(huì)引用“ImportCharge”這個(gè)appender,他們中的log.debug….的日志將會(huì)同時(shí)寫入“importCharge.log”文件。
還可以參考:
http://wiki.jboss.org/wiki/Wiki.jsp?page=Logging
http://logging.apache.org/log4j/docs/

2.2.9配置contentType及charset,TOMCAT5.0下JSP統(tǒng)一配置
在JSP里頭部一般要用page語(yǔ)句指定contentType及charset。
如:
或分開寫:


該語(yǔ)句的作用是“指定由JSP頁(yè)面生成的servlet生成的頁(yè)面的MIME類型及charset”。默認(rèn)的字符集是“ISO-8859-1”,如果不指定正確的charset,則我們的頁(yè)面如有中文,是會(huì)亂碼的。
我主要描述的是后者,charset,字符集。發(fā)生的場(chǎng)景位于一個(gè)頁(yè)面包含另一個(gè)頁(yè)面的情況下。
在JBOSS3.2.3下集成的是tomcat4.0*,用的是JSP1.2/Servlet2.3標(biāo)準(zhǔn),要求JSP主頁(yè)面和所包含頁(yè)面中的“pageEncoding”必須一致,基于這一情況,我們一般做法是包含頁(yè)面不指定“pageEncoding”,它的屬性直接繼承父頁(yè)面即可。
在JBOSS3.2.6下,集成的是tomcat5.0*,要求每個(gè)JSP中必須有“pageEncoding”,換句話說(shuō),父頁(yè)面中的指定對(duì)子頁(yè)面沒(méi)有影響。
有兩個(gè)方法可解決該問(wèn)題:
1、為每個(gè)頁(yè)面指定“pageEncoding”,顯然不可!
2、用JSP2.0/Servlet2.4標(biāo)準(zhǔn),統(tǒng)一配置一下WEB.XML,解析JSP時(shí)統(tǒng)一用一個(gè)“pageEncoding”.這樣我們就不需要為每個(gè)JSP里加個(gè)聲明了。

法2的配置細(xì)節(jié)如下:
配置$JBOSS-HOME/server/default/deploy/jbossweb-tomcat50.sar/TestCrm.war/WEB-INF/web.xml,為下面紫色斜體內(nèi)容。
替換頭部的命名空間聲明:
version="2.4">

………
………
  
     jsp encoding example
     JSPConfiguration
     *.jsp
     true
     GBK
     false
     
     
  

說(shuō)明:的配置說(shuō)明

你可以在中使用以下的配置元素:
Element
描述
如果設(shè)置為true, 在匹配指定的URL模式的JSP 頁(yè)面中,EL 表達(dá)式被當(dāng)作常規(guī)的文本而不是EL 表達(dá)式。當(dāng)移植看起來(lái)有EL表達(dá)式文本的JSP 1.2頁(yè)面到JSP 2.0的時(shí)候,這非常有用。在已經(jīng)轉(zhuǎn)換為JSP 2.0的頁(yè)面中,你可以使用一個(gè)新增的“elIgnoredpage”屬性來(lái)選擇EL是否有效
如果設(shè)置為true, 在某個(gè)匹配的JSP頁(yè)面使用腳本
為匹配指定的URL模式的JSP頁(yè)面指定編碼。這是一個(gè)可選的配置(在每一個(gè)JSP頁(yè)面中指定頁(yè)面的編碼),并且對(duì)于JSP頁(yè)面來(lái)說(shuō)這是使用某些文件編碼(比如:EBCDIC)唯一的辦法
為所有匹配指定的URL模式的JSP頁(yè)面的末尾自動(dòng)包含一個(gè)文件,而指定相關(guān)的context路徑。你可以在一個(gè)中多次使用,或者通過(guò)多個(gè)來(lái)實(shí)現(xiàn)
為所有匹配指定的URL模式的JSP頁(yè)面的開頭自動(dòng)包含一個(gè)文件,而指定相關(guān)的context路徑。你可以在一個(gè)中多次使用,或者通過(guò)多個(gè)來(lái)實(shí)現(xiàn)
如果設(shè)置為true, 所有匹配指定的URL模式的JSP頁(yè)面使用JSP XML語(yǔ)法(它們是JSP Document)


可參見
http://www.oreilly.com.cn/news/jsppart2.php?c=java

2.3 JVM最小、最大內(nèi)存的設(shè)定
如果采取默認(rèn)配置的話,JVM默認(rèn)只能分配到最大64M內(nèi)存(默認(rèn)大小和JVM版本有關(guān)系),這在生產(chǎn)環(huán)境里肯定是不夠,將會(huì)導(dǎo)致用戶通過(guò)WEB方式無(wú)法訪問(wèn)應(yīng)用服務(wù),但是系統(tǒng)進(jìn)程中,JBOSS服務(wù)卻沒(méi)有宕掉的奇怪現(xiàn)象。
修改$jboss/bin/run.conf文件,找到“#JAVA_OPTS=”,如果沒(méi)有該字符串,請(qǐng)?zhí)砑,并去掉最前面的?”,修改該字符串(含雙引號(hào))為JAVA_OPTS="-server -Xms512m -Xmx512m”,這是分配JVM的最小和最大內(nèi)存,取決于硬件物理內(nèi)存的大小,建議均設(shè)為物理內(nèi)存的一半。

更詳細(xì)的介紹請(qǐng)參見
http://java.sun.com/docs/hotspot/VMOptions.html
2.4 OS字符集問(wèn)題
如果應(yīng)用服務(wù)需要OS支持GBK字符集,修改文件/etc/sysconfig/i18n
內(nèi)容為:
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh"
SYSFONT="lat0-sun16"
SYSFONTACM="8859-15"
2.5 JBOSS服務(wù)的啟動(dòng)、停止
$JBOSS_HOME以及%JBOSS_HOME%為jboss在linux、win下安裝的路徑,如果配置了,直接照樣引用即可。
啟動(dòng):
1、for linux: $JBOSS_HOME /bin/run.sh
    2、for win :%JBOSS_HOME%/bin/run.bat

關(guān)閉/停止:
1、for linux: $JBOSS_HOME /bin/ shutdown.sh –S
    2、for win :%JBOSS_HOME%/bin/ shutdown –S
可以用tail –f  $JBOSS_HOME /server/default/log/server.log來(lái)查看jboss服務(wù)的啟動(dòng)或停止的信息。


3.附apache https 服務(wù)器的安裝
以下為李響、譚述綱提供。感謝他們。
apache https 服務(wù)器的安裝
apache 1.x版本需要裝第三方的模塊,mod_ssl,由于我們公司全部采用的是apahce2.x,所以這個(gè)版本的安裝不做討論

apache 2.0以上自帶ssl支持,
但首先要安裝openssl,一般系統(tǒng)自帶的openssl版本較低,最好下載
源碼安裝,例如openssl-0.9.7i
./config
Make
Make test
make install
就可以了

在apache2源碼目錄下執(zhí)行
./configure --prefix=/usr/local/apache --enable-module=so --enable-shared=max --enable-ssl=static  --with-ssl=/usr/local/ssl  --enable-mods-shared=all

然后
Make
make install

修改httpd.conf 加入SSL支持部分,這里指定使用SSL v2協(xié)議
SSLProtocol -all +SSLv2
SSLCipherSuite SSLv2:+HIGH:+MEDIUM:+LOW:+EXP

生成認(rèn)證證書
先建立一個(gè) CA 的證書,
首先為 CA 創(chuàng)建一個(gè) RSA 私用密鑰,
[S-1]
openssl genrsa -des3 -out ca.key 1024
系統(tǒng)提示輸入 PEM pass phrase,也就是密碼,輸入后牢記它。
生成 ca.key 文件,將文件屬性改為400,并放在安全的地方。
[S-2]
chmod 400 ca.key
你可以用下列命令查看它的內(nèi)容,
[S-3]
openssl rsa -noout -text -in ca.key
利用 CA 的 RSA 密鑰創(chuàng)建一個(gè)自簽署的 CA 證書(X.509結(jié)構(gòu))
[S-4]
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
然后需要輸入下列信息:
Country Name: cn 兩個(gè)字母的國(guó)家代號(hào)
State or Province Name: An Hui 省份名稱
Locality Name: Bengbu 城市名稱
Organization Name: Family Network 公司名稱
Organizational Unit Name: Home 部門名稱
Common Name: Chen Yang 你的姓名
Email Address:
sunstorm@263.net
Email地址
生成 ca.crt 文件,將文件屬性改為400,并放在安全的地方。
[S-5]
chmod 400 ca.crt
你可以用下列命令查看它的內(nèi)容,
[S-6]
openssl x509 -noout -text -in ca.crt
下面要?jiǎng)?chuàng)建服務(wù)器證書簽署請(qǐng)求,
首先為你的 Apache 創(chuàng)建一個(gè) RSA 私用密鑰:
[S-7]
openssl genrsa -des3 -out server.key 1024
這里也要設(shè)定pass phrase。
生成 server.key 文件,將文件屬性改為400,并放在安全的地方。
[S-8]
chmod 400 server.key
你可以用下列命令查看它的內(nèi)容,
[S-9]
openssl rsa -noout -text -in server.key
用 server.key 生成證書簽署請(qǐng)求 CSR.
[S-10]
openssl req -new -key server.key -out server.csr
這里也要輸入一些信息,和[S-4]中的內(nèi)容類似。
至于 extra attributes 不用輸入。
你可以查看 CSR 的細(xì)節(jié)
[S-11]
openssl req -noout -text -in server.csr
下面可以簽署證書了,需要用到腳本 sign.sh
[S-12]
sign.sh server.csr
就可以得到server.crt。
將文件屬性改為400,并放在安全的地方。
[S-13]
chmod 400 server.crt
刪除CSR
[S-14]
rm server.csr

Sign.sh在openssl目錄中沒(méi)有。我是在mod_ssl第三方模塊中提取的。

把生成好的文件放在相應(yīng)的認(rèn)證目錄下。如果沒(méi)有相應(yīng)的目錄,可以手工建立


以SSL支持的方式啟動(dòng)apache
/usr/local/apache/bin/apachectl startssl

本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u1/44781/showart_373127.html

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2010-07-08 13:45 |只看該作者
此貼是好帖啊。
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP