Apache + tomcat 实现范域名解析(JK)

前言:

2015年了,nginx已经是基本把apache淘汰掉了,但由于运维架构是很久以前的,还是用到 apache 。

         由于用apache的反向代理模式,发现会把域名重定向,不符合应用情景。

        经过考虑,还是用回了传统的JK模式。

 

 

1.准备的材料

1)apache 2.2.X

2)tomcat  6/7/8

3)jdk 6/7

4)JK

  • 下载windows版本的mod_jk connector,这个是链接apache和tomcat的桥。是Apache接受到jsp或servlet时能将请求转发到tomcat。提别需要注意的是,下载的JK需要和你的apache版本相符合。请到 http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/ 下载和自己apache版本符合的JK.。

下载完,解压,其中的 so后缀文件,到 apache根距离下的 modules

步骤一:

   安装JDK,apache,tomcat

步骤二:

  打开%apache_home%/conf/httpd.conf ,“%apache_home%” 为apache安装根路径

在最后面加入

#jk方式2,服务器


#Include conf/extra/httpd-vhosts.conf 
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "h:/Program Files (x86)/Apache Software Foundation/Apache2.2/conf/workers2.properties"
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器名
JkMount /*.jsp controller
JkMount /servlet/* controller
JkMount /*.do controller


#jk方式2,服务器

worker2.properties

#server
worker.list = controller
#========tomcat1========
worker.tomcat1.port=8009
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1
#========tomcat2========
#worker.tomcat2.port=12009
#worker.tomcat2.host=localhost
#worker.tomcat2.type=ajp13
#worker.tomcat2.lbfactor = 1
#========tomcat3========
#worker.tomcat3.port=13009
#worker.tomcat3.host=192.168.0.80 //在我的虚拟机中的,可以算远程的吧
#worker.tomcat3.type=ajp13
#worker.tomcat3.lbfactor = 1
 
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1
worker.controller.sticky_session=false
worker.controller.sticky_session_force=1
#worker.controller.sticky_session=1

httpd-vhosts.conf

<VirtualHost *:80> 
   ServerName www.bbb.com
    ServerAlias *.bbb.com
    DocumentRoot C:/webapps/itaem    
<Directory  "C:/webapps/itaem">    
      Options Indexes FollowSymLinks 
      AllowOverride All 
      Order allow,deny 
      Allow from all 
</Directory> 
JkMount /*.jsp controller
JkMount /servlet/* controller
JkMount /*.do controller
DirectoryIndex index.jsp  #默认访问页
JkMount /PanoServlet* controller
</VirtualHost> 

其中

*.bbb.com

则可以实现范域名解析,

其解析到c:/webapps/itaem

在tomcat中配置一下

tomcat的配置文件

server.xml

<Host name="bbb.com"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
          <Alias>asd.bbb.com</Alias>
          <Alias>123.bbb.com</Alias>
          <Alias>456.bbb.com</Alias>
     
             <Context path="" docBase="C:/webapps/itaem" debug="0" reloadable="true"/> 
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
			   </Host>

你可能感兴趣的:(Apache + tomcat 实现范域名解析(JK))