哎!终于把这个整合工作给搞定了,做这个工作比破解JIVE3还要辛苦呀!
偶折腾了2天,真不是人过的生活,555555555555,在这里偶把整个整合过程与经验写给大家看看,希望能吸取点点教训。
偶用的WIN2000 ADV SERVER,在偶的本本上运行,一直稳定的一塌糊涂,偶没事就用小猫UPDATE系统,在偶打完SP3后竟然又补了30几个洞洞,真愁人微软的东东真是丐帮首领级别的系统,不说废话了,说正经的事情吧。
偶先下了最新的JDK1.4.102 AND APACHE 2.0.45 AND TOMCAT 4.1.24 AND MOD_JK2 但就是这个MOD_JK2东东的版本好乱呀!偶就下了3个不同的版本,在http://jakarta.apache.org/builds/jakarta-tomcat-connectors/jk2/下分为nightly目录与release目录,而且下面都有MOD_JK2.DLL但不同的是release目录下让人更疑惑不解,在release下又分为v2.0.0、v2.0.1、v2.0.2三个目录,偶当然是用最高版本了,但别的此类文章用的分别是v2.0.1/bin/win32/mod_jk2-2.0.43.dll与nightly/WIN32/mod_jk2.dll,而偶用的却是v2.0.2/bin/win32/mod_jk2-2.0.43.dll,该文件比上两个要大一点点148K,上两个是120K,偶就在想这个文件是最新的,而且也比他们两个大一点点,那效率和稳定程度一定有所改进,偶就用这个了。
下面是具体的连接地址:
j2sdk-1_4_1_02-windows-i586.exe
http://java.sun.com/j2se/1.4.1/index.html //自己下吧,地址是动态的
jakarta-tomcat-4.1.24.exe
http://apache.linuxforum.net/dist/jakarta/tomcat-4/binaries/tomcat-4.1.24.exe
apache_2.0.45-win32-x86-no_ssl.msi
http://apache.linuxforum.net/dist/httpd/binaries/win32/apache_2.0.45-win32-x86-no_ssl.msi
mod_jk2-2.0.43.dll
以上这些下完安装就行了,一般的顺序是JDK,APACHE,TOMCAT,MOD_jk2,其中MOD_JK2是个DLL文件,把他COPY到Apache2\modules目录下使用就行,这个东东是干吗用的,ITSYH老弟问偶,偶也说不清楚,只知道用他来整合APACHE与TOMCAT简单的很,至于以前如何复杂偶就真的不明白了,哈哈。。。。
那就先JDK吧!偶真的不想写了,这个东东的安装配置太多了,偶不想写具体的东东,只需要把你安装JDK的BIN目录加到系统变量PATH里,这是为了使用BIN目录下的东东,还有就是新建一个CLASSPATH系统变量然后把JDK\lib\Tools.jar与JDK\lib\dt.jar下的这两个JAR包给包含就行了。
在这里偶还要提一下我们以后肯定要用的一些数据库的JDBC驱动的问题,一般网上都说让大家把这些包的路径加在CLASSPATH中,而很多情况下你就是加了他还是找不到相关的JDBC驱动程序,而CLASSPATH的查找是顺序进行的,就是先从第一个路径开始找,如果找不到你要用的东东就找弟二个,这样很容易出现问题,还有就是如果要移植的话,你可就太麻烦了,要指定的路径很多,实在让人受不了,偶总结了以前的使用经验,觉得把一些驱动或要使用的JAR包放到JDK的下面你就省事多了,应该把此类文件不管什么ORACLE,SQLSERVER,MYSQL等等的JDBC的驱动都放到JDK\jre\lib\ext下,根本就不用加什么CLASSPATH,偶就是这样用的。
至于APACHE吗!偶也不多说了,只把要注意的问题给写一下:
Apache2XX有一个小问题,默认安装成功后,在Apache2主目录下的htdocs目录中没有index.html文件,我们须将该目录下的index.html.en改名为index.html。偶就是吃了此亏,装了N遍才搞清楚原来HTDOCS目录下竟然没有index.html OR index.htm,不然怎么一直出现是找不到页面的错误呢!
还有解决不自动显示中文:编辑Apache2\conf目录下配置文件httpd.conf。用记事本打开它并查找"AddDefaultCharset ISO-8859-1",注释掉"AddDefaultCharset ISO-8859-1",即在"AddDefaultCharset ISO-8859-1"前加个"#"字符。然后在"#AddDefaultCharset ISO-8859-1"下面添加如下三行:
AddDefaultCharset GB2312
DefaultLanguage GB2312
AddLanguage zh-cn .cn
嘿嘿。。。偶上面的基本上是抄袭。
TOMCAT安装了:
主要应注意的是在系统变量中建立两个环境变量,一个是JAVA_HOME 变量,变量的值是安装JDK的目录,另一个是TOMCAT_HOME 变量,变量的值当然是你安装TOMCAT的目录了。
当你装完这些后就可以测试APACHE与TOMCAT了,你启动APACHE与TOMCAT后,在浏览器中输入:http://localhost/ 或http://localhost:8080/ 如果出现正常的欢迎页面就说明你的APACHE与TOMCAT都安装成功了,接下来就是整合的问题。
系统开始整和了:
先把你下的MOD_JK2-2.0.43.dll改名成MOD_JK2.DLL主要是方便呀!你不改偶也关不着你。
接下来把MOD_JK2.DLL COPY到Apache2\modules目录下,这下面应该只有这一个DLL吧!呵呵。。。如果你有别的DLL也不见的就有问题。
下面的问题就是修改配置文件,我们要修改配置文件是
Apache2\conf\httpd.conf 这个文件,你用文本编辑器把他打开,在文件最后加入下列内容:
LoadModule jk2_module modules/mod_jk2.dll
<VirtualHost localhost> //你本地的地址
ServerAdmin webmaster@dummy-host.example.com //系统管理员的MAIL,你改不改都行了。
DocumentRoot "C:/Tomcat 4.1/webapps" //这个是你TOMCAT的WEBAPPS目录,就是你JSP要放的地方,如果不愿意放这里你自己随便改,偶没有意见。
ServerName dummy-host.example.com //服务器的名字,改不改随你了。
DirectoryIndex index.htm index.html index.jsp //这里是你默认页面的文件。
ErrorLog logs/dummy-host.example.com-error_log //错误日志的文件
CustomLog logs/dummy-host.example.com-access_log common //自定义日志的文件
</VirtualHost>
这个文件完成以后呢!就跟着偶新建立一个名叫workers2.properties的文件,这个文件是放在Apache2\conf下,同httpd.conf是一伙的。
这个文件的内容如下:
[shm]
file=${serverRoot}/logs/shm.file
size=1048576
# Example socket channel, override port and host.
[channel.socket:localhost:8009]
port=8009
host=127.0.0.1
# define the worker
[ajp13:localhost:8019]
channel=channel.socket:localhost:8009
# Uri mapping
[uri:/*]
worker=ajp13:localhost:8009
偶是抄人家的,大家就着么用吧,具体意思偶也不太明白,兄弟姐妹们请多多包涵了。
测试一下:
先启动Apache服务器再启动Tomcat服务器,颠倒一下不行吗?如果想试一下偶不反对。
如果APACHE或TOMCAT服务器没有成功启动,就说明你太倒霉了,要么是你没有按偶写的做,要么就是你运气太不好了,呵呵。。。不要问偶为什么?问自己吧!
在IE中输入"http://localhost:8080/"。链接后,应该看到TOMCAT的欢迎页面,表明Tomcat启动成功。
在IE中输入"http://localhost/"。应该看到的还是TOMCAT的欢迎页面,如果这样你的运气就太好了,赶快去买彩票吧!500W就在你的手中呀!
最后故障排除:
这个问题快吧偶给烦死了,整天偶呀偶的的把大家都快呕死了吧!嘿嘿。。。
在这里我万分的感谢niya DD OR MM因为咱不知道他是男是女,反正不管男女他也不会嫁给咱,就不要在此烦恼。
我唯一碰到的问题就是在系统运行过程中,执行JSP页面后我的TOMCAT 控制窗口显示一个错误,该错误信息如下:
ChannelSocket - -connection timeout reached
咱看了niya给的E文联接帮助后,修改了TOMCAT下CONF下server.xml文件的一个参数值,在Define a Coyote/JK2 AJP 1.3 Connector on port 8009注释下有<Connector>标签中,有一属性connectionTimeout=20000,把此值修改为-1就能解决联接超时的问题,虽然问题给解决的,但偶还是不明白为何要如此做,希望知道的兄弟姐妹告诉偶一声,小弟一定以身相许。
这样就算基本完成了APACHE与TOMCAT的整合,但你还有可能出现其他的问题,不过不要问偶,因为咱也搞不懂呀!