安装环境

ubuntu11.4 64位

其实64位和32位差别不大,但是64位支持4g以上大内存,32支持到3g,鉴于大部分同学的机器都是4g的内存,所以推荐大家使用64位系统

jboss4.2.2

4.2.2GA与4.2.3GA都可以,两者之间的区别在于,前者是开发版,后者是企业版。更直观的区别在于4.2.2会打出很多调试日志,4.2.3不会。一般情况下使用4.2.3日志的输出如下

===============================================================================  
  
  JBoss Bootstrap Environment  
  
  JBOSS_HOME: D:\dev-tools\jboss-eap- 4.3 \jboss-as  
  
  JAVA: C:\Program Files\Java\jdk1. 5 .0_17\bin\java  
  
  JAVA_OPTS:  -Dprogram.name=run.bat -server -Xms128m -Xmx512m -Dsun.rmi.dgc.cli  
ent.gcInterval= 3600000  -Dsun.rmi.dgc.server.gcInterval= 3600000   
  
  CLASSPATH: C:\Program Files\Java\jdk1. 5 .0_17\lib\tools.jar;D:\dev-tools\jboss-  
eap- 4.3 \jboss-as\bin\run.jar  
  
===============================================================================  
  
14 : 53 : 15 , 656  INFO  [Server] Starting JBoss (MX MicroKernel)...  
14 : 53 : 15 , 656  INFO  [Server] Release ID: JBoss [EAP]  4.3 . 0 .GA_CP04 (build: SVNTag  
=JBPAPP_4_3_0_GA_CP04 date= 200902200048 )  
14 : 53 : 15 , 656  INFO  [Server] Home Dir: D:\dev-tools\jboss-eap- 4.3 \jboss-as  
14 : 53 : 15 , 656  INFO  [Server] Home URL: file:/D:/dev-tools/jboss-eap- 4.3 /jboss-as/  
  
14 : 53 : 15 , 656  INFO  [Server] Patch URL:  null   
14 : 53 : 15 , 656  INFO  [Server] Server Name: production  
14 : 53 : 15 , 656  INFO  [Server] Server Home Dir: D:\dev-tools\jboss-eap- 4.3 \jboss-as  
\server\production  
14 : 53 : 15 , 656  INFO  [Server] Server Home URL: file:/D:/dev-tools/jboss-eap- 4.3 /jb  
oss-as/server/production/  
14 : 53 : 15 , 656  INFO  [Server] Server Log Dir: D:\dev-tools\jboss-eap- 4.3 \jboss-as\  
server\production\log  
14 : 53 : 15 , 656  INFO  [Server] Server Temp Dir: D:\dev-tools\jboss-eap- 4.3 \jboss-as  
\server\production\tmp  
14 : 53 : 15 , 656  INFO  [Server] Root Deployment Filename: jboss-service.xml  
14 : 53 : 15 , 843  INFO  [ServerInfo] Java version:  1.5 .0_17,Sun Microsystems Inc.  
14 : 53 : 15 , 843  INFO  [ServerInfo] Java VM: Java HotSpot(TM) Server VM  1.5 .0_17-b04  
,Sun Microsystems Inc.  
14 : 53 : 15 , 843  INFO  [ServerInfo] OS-System: Windows XP  5.1 ,x86  
14 : 53 : 16 , 140  INFO  [Server] Core system initialized  
14 : 53 : 18 , 093  INFO  [WebService] Using RMI server codebase: http: //127.0.0.1:8083  
/  
<strong> 14 : 53 : 18 , 093  INFO  [Log4jService$URLWatchTimerTask] Configuring from URL: resour  
ce:jboss-log4j.xml  
</strong>

不会打出服务启动时间,到了line41实际上已经是启动完成了。

更详细的不同大家可以参考

jboss4.2.3GA说明

所以推荐大家使用4.2.2GA

Apache2

推荐大家使用httpd-2.0.61.tar.gz

据说使用此版本连接jk不会发生问题,这个版本我装起来的却是没问题,其他的版本我也没试过,大家可以试试。
mod_jk

tomcat-connectors-1.2.26-src,配合apache2使用

openssl

这个地方需要注意一下,推荐大家使用openssl-0.9.8n.tar.gz,如果你的ubuntu是32位系统可以使用0.9.8k,64位请使用0.9.8n,否则编译的时候不能通过,这个是openssl的一个bug,高版本中修复了这个问题

安装步骤

下载安装文件

sudo mkdir /usr/alibaba/install
cd /usr/alibaba/install

sudo wget http://archive.apache.org/dist/httpd/httpd-2.0.61.tar.gz
sudo wget http://sourceforge.net/projects/jboss/files/JBoss/JBoss-4.2.2.GA/jboss-4.2.2.GA.zip
sudo wget http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.26/tomcat-connectors-1.2.26-src.tar.gz
sudo wget http://www.openssl.org/source/openssl-0.9.8n.tar.gz
sudo wget http://cronolog.org/download/cronolog-1.6.2.tar.gz

安装路径不能修改,因为,现在应用的安装脚本中很多路径都是写死的,改了路径后很可能找不到文件
解压

sudo tar zxf *
sudo unzip *

编译安装

1.安装编译apache

#进入apache安装文件目录

cd httpd-2.0.61

#编译完成后,会将编译好的apache放在 {color:#ff0000}/usr/alibaba/httpd{color} 目录下
sudo ./configure --prefix=/usr/alibaba/httpd \--enable-rewrite= static \--with-mpm=worker \--enable-proxy \--enable-proxy-http \--enable-deflate \--enable-headers \--enable-expires \--enable-so
 
如果出现error:可以先安装一下zlib
sudo apt-get install zlib1g-dev
 
##编译
sudo make
 
##安装
sudo make install

2.安装openssl

cd /usr/alibaba/install/openssl- 0.9 . 8
 
sudo ./config \--prefix=/usr/alibaba/openssl shared
 
sudo make
 
sudo make install
 
#建立软链接
sudo ln \-s /usr/alibaba/install/openssl- 0.9 .8n /usr/alibaba/openssl
###这一段最好保存成一个sh文件执行
 
if (grep -q openssl /etc/ld.so.conf)
then
         ldconfig
         echo "openssl lib alreadly exist /etc/ld.so.conf"
else
         echo "/usr/alibaba/openssl/lib" >>/etc/ld.so.conf
         ldconfig
fi

3.安装mod_jk

cd /usr/alibaba/install/tomcat-connectors- 1.2 . 28 -src/ native
 
sudo ./configure \--with-apxs=/usr/alibaba/httpd/bin/apxs
 
sudo make
 
sudo make install
 
sudo cp apache- 2.0 /mod_jk.so /usr/alibaba/httpd/modules/

4.安装mod_ssl

sudo /usr/alibaba/httpd/bin/apxs -ci -I/usr/alibaba/openssl/include/openssl -I/usr/alibaba/openssl/include -L/usr/alibaba/openssl/lib -lssl -lcrypto /usr/alibaba/install/httpd- 2.0 . 61 /modules/ssl/*.c

5.安装crono_log
如果不安装crono_log,启动应用的时候是启动不起来的

cd /usr/alibaba/install/cronolog- 1.6 . 2
sudo ./configure \--prefix=/usr/alibaba/cronolog
sudo make
sudo make install

6.配置环境变量
ubuntu的环境变量配置和linux不太一样,需要在/etc/environment 配置

sudo gedit /etc/environment
#执行上面命令后会弹出文本编辑器,在编辑器中修改编辑完成后直接保存即可
 
#让修改生效
source /etc/environment

下面是我的配置,除了path需要根据情况做点改变,其他项都不许要改变:

CLASSPATH="/usr/alibaba/java/lib"
JAVA_HOME="/usr/alibaba/java"
JBOSS_HOME="/usr/alibaba/jboss"
APACHE_HOME="/usr/alibaba/httpd"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:$ANTX_HOME/bin:$JAVA_HOME/bin"

如果你的jdk路径和上面的不一样,那么需要做个软链接

怎么知道你的java路径呢?
使用:

which java

就可以显示出来,
然后使用

sudo ln -s /your_jdk_path /usr/alibaba/java

ubuntu默认安装的openjdk

删除:sudo apt-get autoremove openjdk-6-jre到了这里,服务环境就算安装完成了,下面就需要在你的用户目录下co代码,部署antx.properties文件,启动应用了。


mod_jk源码编译安装


1.下载mod_jk源码
wget http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.26/tomcat-connectors-1.2.26-src.tar.gz

2.解压缩
tar -vxf tomcat-connectors-1.2.26-src.tar.gz
cd tomcat-connectors-1.2.26-src

3.编译
./configure --with-apxs=/usr/alibaba/httpd/bin/apxs --with-apache2-lib=/usr/alibaba/httpd/modules --with-java-home=/usr/alibaba/java --with-java-platform=2 -enable-jni

make

make install ##这步完了后会在/usr/alibaba/httpd/modules/下生成mod_jk.so

安装完毕

在ubuntu编译安装apache2.2.22


下载

在网页http://httpd.apache.org/download.cgi#apache22中下载httpd-2.2.22.tar.gz,解压缩该包到 ~/ide/httpd-2.2.22 【这个路径是随意的】

安装

查看 ~/ide/httpd-2.2.22 中的内容,这里仅仅显示该文件夹下所包含的目录:

~/ide/httpd- 2.2 . 22
|-- build
|-- docs
|-- include
|-- modules
|-- os
|-- server
|-- srclib
|-- support
`-- test

进入到上述目录中,执行如下命令:

sudo make clean
sudo ./configure --prefix=/usr/alibaba/httpd22 --enable-rewrite= static --enable-speling=shared
sudo make
sudo make install

应该经历数分钟的编译打包之后,就能发现目录【/usr/alibaba/httpd22】下有了需要的apache程序。

配置

修改 httpd-2.2.22/docs/conf/httpd.conf
修改1

在配置文件【~/ide/httpd-2.2.22/docs/conf/httpd.conf】当中搜索“httpd-vhosts.conf”,可揣看到如下配置:

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
 
# Local access to the Apache HTTP Server Manual

将“httpd-vhosts.conf”之前的“#”去除,最终修改成如下内容:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf
 
# Local access to the Apache HTTP Server Manual
修改2

在115行处,添加如下内容,或者直接修改已有内容为如下内容:

<Directory "/home/guokai/work/trunk" >
     Options FollowSymLinks
     AllowOverride None
     Order allow,deny
     Allow from all
</Directory>
修改 httpd-2.2.22/docs/conf/extra/httpd-vhosts.conf

在配置最末尾增加如下内容:

<VirtualHost *: 80 >
     DocumentRoot "/home/guokai/work/trunk"
     ServerName style.china.alibaba.com
     ErrorLog "logs/style.china.alibaba.com-error.log"
     CustomLog "logs/style.china.alibaba.com-access.log" common
  
     <IfModule mod_rewrite.c>
         RewriteEngine On
         RewriteCond %{DOCUMENT_ROOT}/style-other-current/%{REQUEST_URI} -f
         RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/style-other-current/$ 1 [L]
  
         RewriteCond %{DOCUMENT_ROOT}/style-winport-current/%{REQUEST_URI} -f
         RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/style-winport-current/$ 1 [L]
  
         RewriteRule ^(.*)$ http: //10.20.136.137$1 [L]
     </IfModule>
</VirtualHost>

做了上述配置之后,以后css或者js请求,就会首先到如下两个目录去搜索对应的文件,如果找不到,就会去10.20.136.137上搜索css或者js文件:

/home/guokai/work/trunk/style-other-current
/home/guokai/work/trunk/style-winport-current

style-other-current和style-winport-current其实是符号链接

为了以后的需求的需要,不用频繁的修改配置文件,我们可以在目录【/home/guokai/work/trunk/】下增加两个符号链接,指向我们所需要修改js或css的文件夹。

比如我的css和js放在目录【/home/guokai/work/2012/remark-removetradetype-tyr-20120220/style-other/】下。
其目录内容如下:

/home/guokai/work/ 2012 /remark-removetradetype-tyr- 20120220 /style-other/
|-- css
`-- js

执行如下指令,创建符号链接:

cd /home/guokai/work/trunk/
ln -s style-other-current /home/guokai/work/ 2012 /remark-removetradetype-tyr- 20120220 /style-other

如果未来需要变更符号链接,可以直接 rm /home/guokai/work/trunk/style-other-current ,而后重新创建符号链接即可。配置文件可以不用变更。


Java环境搭建

1.安装ubuntu linux 10.04 系统(推荐,可以在虚拟机中运行),以下步骤都是在ubuntu系统中进行

2.从http://java.sun.com中下载jdk,我的版本是jdk1.6.0_21,我下载的是bin文件,放在我的home目录下即/home/wanzhuqing目录,在shell中执行

sudo chmod u+x /home/wanzhuqing/jdk1. 6 .0_21.bin

修改bin文件权限,使其可执行 ,然后,执行 /home/wanzhuqing/jdk1.6.0_21.bin 将会出现字幕,持续按回至屏幕显示要求输入yes/no,此时输入y回车,将会把jdk解压到文件夹,得到jdk1.6.0_21目录。此时,jdk已安装完毕,下面进行配置
3.执行 sudo gedit ~/.bashrc 在打开的文件末尾输入:

JAVA_HOME=/home/wanzhuqing/jdk1. 6 .0_21
JRE_HOME=/home/wanzhuqing/jdk1. 6 .0_21/jre
CLASSPATH=.:/home/wanzhuqing/jdk1. 6 .0_21/lib:/home/wanzhuqing/jdk1. 6 .0_21/lib/tools.jar:/home/wanzhuqing/jdk1. 6 .0_21/lib/dt.jar
PATH=$PATH:/home/wanzhuqing/jdk1. 6 .0_21/bin
export JAVA_HOME JRE_HOME CLASSPATH PATH

注意将有关目录替换成自己的目录,保存文件后在执行 source ~/.bashrc 使得设置即时生效,执行 echo $JAVA_HOME 有结果输出 表示配置环境变量成功

4.ubuntu下面已经自带了一个openJDK,听网上说这个jdk不是很好,所以还是用sun-jdk替换了才好,使用下面两行命令将sun-jdk设置为系统首选

sudo update-alternatives \--install /usr/bin/java java /home/wanzhuqing/jdk1. 6 .0_21/bin/java 90
sudo update-alternatives \--install /usr/bin/java java /usr/lib/jvm/java- 6 -openjdk/jre/bin/java 40
sudo update-alternatives \--install /usr/bin/javac javac /home/wanzhuqing/jdk1. 6 .0_21/bin/java 90

每行后面的数字90,40是优先级 , 这时候使用命令

ls -l /etc/alternatives/java

可以看到
lrwxrwxrwx 1 root root 37 2010-07-27 21:11 /etc/alternatives/java -> /home/wanzhuqing/jdk1.6.0_21/bin/java
说明JVM已经是使用sun-jdk了。
5.输入java -version,可以看到

java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6 .0_21-b06)
Java HotSpot(TM) Client VM (build 17.0 -b16, mixed mode, sharing)

表明配置完成

apache+Jboss安装配置

1.从http://httpd.apache.org/download.cgi上下载linux版本的apache,保存在用户home目录下,运行

tar  zxvf  httpd- 2.2 . 16 .tar.gz

解压后,进入解压后的httpd目录下,看到configure 的执行文件,此时用:

./configure --prefix=/home/wanzhuqing/httpd --enable-so

设置安装目录和参数设置。so为apache扩展模块, 该模块用于今后apache运行时动态加载 DSO模块。再执行

make
make install

编译安装apache 就可以了 ,启动apache

sudo ~/httpd/bin/apachectl start;
关闭 apache

sudo ~/httpd/bin/apachectl stop;

2.Jboss的安装比较简单 从共享空间中复制jboss目录至ubuntu下的jboss安装目录既可,假定安装在~目录下,启动jboss

sudo sh ~/jboss/bin/run.sh
关闭jboss

sudo sh ~/jboss/bin/shutdown.sh -S

3.apache连接jboss,实现请求的分发处理
(1)将mod_jk文件复制到apache的modules里面,并将mod_jk文件改名为mod_jk.so,改名是为了将来mod_jk文件更新后,不用再改动配置文件。
(2)在conf目录下建立workers.properties文件,确定请求转发处理的目标server配置,内容如下

worker.list=jboss
worker.jboss.port= 8009
worker.jboss.host=localhost
worker.jboss.type=ajp13
worker.jboss.lbfactor= 1

(3)修改conf目录下的httpd.conf文件,首先配置apache监听的端口和域名

Listen 127.0 . 0.1 : 80
ServerName www.alibado.com: 80
再载入配置分发处理的模块
LoadModule jk_module modules/mod_jk.so
再载入刚才配置好的目标server,并配置JK

JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info

最后配置虚拟主机,配置请求转发的规则

<VirtualHost *: 80 >
ServerName www.alibado.com: 80
ServerRoot "/home/wanzhuqing/httpd"
DocumentRoot "/home/wanzhuqing/web-deploy/static"
<Directory "/home/wanzhuqing/web-deploy/static" >
     Options FollowSymLinks Includes
     AllowOverride None
     Order allow,deny
     Allow from all
     AddType text/html .ssi
     AddOutputFilterByType INCLUDES text/html
</Directory>
DirectoryIndex index.html index.htm index.jsp
 
#让Apache支持对所有资源的传送,用以jboss解析
JkMount /*.htm jboss
JkMount  /*.jsp jboss
</VirtualHost>



Logo

更多推荐