linux下按装tomcate

一、环境准备于介绍:

  1.假设您已经成功设置系统的Java运行开发环境,包括JDK的安装,JAVA_HOME,PATH,CLASSPATH等等环境变量的设置。

  2.Apache web服务器[版本不限]

  3.Jakarta-Tomcat[目前推荐版本:5.0.16-5.0.28之间]

  4.jk2连接器(jakarta-tomcat-connectors-jk2-src-current.tar.gz)[下载地址:http://jakarta.apache.org/site/sourceindex.cgi]

  二、Apache安装:

  1.从apache.org下载httpd-2.0.52.tar.gz后解压缩得文件夹httpd-2.0.52。

  2.进入httpd-2.0.52/bin目录,运行

  ./configure -prefix=/usr/local/apache -enable-so

  -prefix指定安装目录,-enable-so用于加载jk2连接器,此项必须。

  3.make,make install,这没的说。

  4./usr/local/apache/apachectl start,然后用浏览器访问一下localhost,应该成功了吧!

  三、Tomcat安装:

  这个不用说了吧?Java环境搭建好,随便找个地方解压,$TOMCAT_HOME/bin/startup.sh一下,看看8080端口,应该错不了。

  四、jk2的编译和加载

  1.解压jakarta-tomcat-connectors-jk2-src-current.tar.gz得到目录jakarta-tomcat-connectors-jk2-src-current,进入目录jakarta-tomcat-connectors-jk2-src-current/jk/native2,运行

  ./configure --with-apxs2=/usr/local/apache/bin/apxs (注意你的apache安装目录),然后make之。

  2.等到make完毕以后,你会发现多了一个jakarta-tomcat-connectors-jk2-src-current/jk/build目录,进入jakarta-tomcat-connectors-jk2-src-current/jk/build/jk2/apache2,执行/usr/local/apache/bin/apxs -n jk2 -i mod_jk2.so,之后你会发现mod_jk2.so文件已经存在于/usr/local/apache/modules/中了。

  3.在你的apache/conf/httpd.conf最下面加上一行

  LoadModule jk2_module modules/mod_jk2.so

  4.在apache/conf/中新建文件workers2.properties,其内容如下:

  [logger.apache2]

  level=DEBUG

  [shm]

  file=/usr/local/apache2/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:8009]

  channel=channel.socket:localhost:8009

  # Uri mapping

  [uri:/*]

  worker=ajp13:localhost:8009

  此时启动apache于tomcat,访问localhost的80端口,看到了tomcat的欢迎页面,试着访问tomcat的jsp/servelt-examples,也能运行成功,祝贺您,您已经初步成功。请继续往下进行。

  五、其他配置

  上面的配置感觉就是把tomcat的8009端口的服务通过ajp13转给了apache,真没意思,我们想要的是jsp才交给tomcat处理,这个简单,我们继续:

  假设你的apache的页面根目录为/var/www,我们首先来更改tomcat的server配置,把一个webapp放到/var/www:在/var/www下面按照web application的那套规范建立WEB-INF,web.xml,calsses,lib等等目录和文件,之后修改$TOMCAT_HOME/conf/server.xml,在元素之间加入一个context元素:

  < Context path="" docBase="/var/www" debug="0" reloadable="true" crossContext="true">

  < /Context>

  修改workers2.properties

  # Uri mapping

  [uri:/*]

  worker=ajp13:localhost:8009

  修改为:

  # Uri mapping

  [uri:/*.jsp]

  worker=ajp13:localhost:8009

  现在好了,apache只有碰到jsp页面的时候才去请求tomcat的8009,而且我们作的东西扔进/var/www这个webapp就好了。

  提示:

  1.apache服务器可以让用户目录下的public_html文件夹得到web访问,为了让这些用户也得到jsp的支持,你可以为每个用户添加一个context到tomcat的server.xml中。其中path="/~username" docBase="/home/username/public_html"。其他和刚才添加的哪个context相同。

  2.worker2.properties文件中的

  # Uri mapping

  [uri:/*.jsp]

  worker=ajp13:localhost:8009

  很有意思,如果你使用spring,struts等等framework并进行了自定义后缀,把相应的后缀加进去就可以了,apache会把这里定义的访问形式统统交给tomcat处理。

你可能感兴趣的:(apache,tomcat,jsp,linux,socket)