您的位置:首页 > 运维架构 > Tomcat

Apache和Tomcat多项目整合发布

2015-05-08 16:50 197 查看
Apache和tomcat整合步骤:

  1.下载Apache2.0.53,并安装在c:\apache目录下,端口为80

  2.下载Tomcat5.5.9,并安装在c:\tomcat目录下,端口为8080

  3.从apache网站下载jk模块."mod_jk-1.2.10-apache-2.0.53.so"(下载地址 http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32),安装在c:\apache\modules下.
  4.在c:\apache\modules下新建一个配置文件workers.properties,其内容为

  worker.list= worker1[,work2...]

  worker.worker1.type=ajp13

  worker.worker1.host=localhost

  worker.worker1.port=8009

  worker.worker1.lbfactor=3

  worker.worker1.cachesize=10

  worker.worker1.cache_timeout=600

  worker.worker1.socket_keepalive=1

  worker.worker1.recycle_timeout=300

  注明:“worker.worker1.host=localhost”为tomcat所在机器名或ip

  “worker.worker1.port=8009”tomcat的jk工作端口

  5.修改c:\apache\conf\httpd.conf配置文件

  在文件的末尾加上以下指令

  LoadModule jk_module modules/mod_jk-1.2.10-apache-2.0.53.so

  JkWorkersFile modules/workers.properties

  JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

  JkRequestLogFormat "%w %V %T"

  JkMount /*/servlet/* worker1

  JkMount /*.jsp worker1

  #要设置虚拟路径,否则图片无法正常显示

  Alias /voteadmin "E:/ontopvoteadmin/WebModule"

  <Directory "E:/ontopvoteadmin/WebModule">

  Options Indexes MultiViews

  AddOutputFilter Includes html

  AllowOverride None

  Order allow,deny

  Allow from all

  </Directory>

配置多个项目:

如果是一台主机配置多个项目,并且采用一个ip映射多个域名的形式,如ip为:192.168.1.132,项目有两个分别为:web1,web2 都在E盘下的workspace目录下,也就是E://workspace/web1和E://workspace/web2 。比如我们要达到能在ie地址栏里输入:http://web1和http://web2能访问项目的效果。那么,要进行下面的设置。

首先是tomcat,在tomcat的安装目录下的conf文件夹里有个配置文件server.xml,打开这个文件,找到<Engine>标签,里面有个<Host>标签,也就是虚拟机的意思。我们要设置几个项目,就需要几个<host>,<host>标签里的<context>就对应一个项目。

<Host name="web1" debug="0" appBase=""

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

<Context path="" docBase="E://workspace/web1 " debug="5" reloadable="true" crossContext="false">

……

</Context>

</Host>

<Host name="web2" debug="0" appBase=""

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

<Context path="" docBase="E://workspace/web2 " debug="5" reloadable="true" crossContext="false">

……

</Context>

</Host>

这样tomcat就配置完成了。

下面配置Apache,在Apache安装目录下的conf文件中httpd.conf配置文件,我们也要配置虚拟机:

找到VirtualHost,这里的这个标签要对应server.xml中的<host>标签。

<VirtualHost web1:80>

ServerAdmin 454545@qq.com

DocumentRoot "E://workspace/web1"

ServerName 127.0.0.1

ErrorLog logs/error.log

CustomLog logs/access.log common

</VirtualHost>

</VirtualHost>

  <VirtualHost web2:80>

ServerAdmin 454545@qq.com

DocumentRoot "E://workspace/web2"

ServerName 127.0.0.1

ErrorLog logs/error.log

CustomLog logs/access.log common

</VirtualHost>

再找到Listen ,即监听,改为:

Listen 127.0.0.1:80

Listen 192.168.1.134:80

还有一点要注意,因为现在是将web1和web2两个域名映射到ip 192.168.1.132上,而现在还没有做相关的映射工作,所以还要设置一个重要的文件Hosts文件,这个文件是计算机自带文件,负责ip地址的映射,如果是win XP系统,host文件所在的目录为:C:\WINDOWS\system32\drivers\etc\Hosts,用记事本打来,发现里面有一行代码:127.0.0.1 localhost,这就是为什么localhost能代表本机的意思。127.0.0.1是个特殊的ip只能代表本机,而且不能做域名映射。所以我们用的内网ip进行映射,我的机子是192.168.1.132。所以加上两行代码:

192.168.1.132 web1

192.168.1.132 web2

保存。重启apache和tomcat执行http://web1和http://web2就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: