日期:2014-05-16  浏览次数:21096 次

配置apache + tomcat 并设置apache 二级域名重定向试验

各门户网站的个人博客服务经常采用类似 http://seamankwok.iteye.com 的域名,今天我在自己本地测试了一下apache的域名转向
一、网络试验环境准备:
?将seamankwok.iteye.com 路由到本地,禁止访问外网,修改window的路由表hosts,增加一行127.0.0.1?seamankwok.iteye.com
?PS:若有DNS服务器环境的话可以配置*.iteye.com -> 127.0.0.1,因为我是WIN XP,这里只试验apache的域名转向
二、配置apache + tomcat
?1、下载安装apache_2.0.59-win32-x86-no_ssl.msi
?2、下载安装jakarta-tomcat-5.0.28.zip
?3、下载mod_jk-apache-2.0.29.so,并拷贝到apache安装目录的modules下
?4、d:\Apache\Apache2\bin\Apache.exe -t 测试
?5、在tomcat安装目录conf下新增workers.properties文件
??workers.tomcat_home=D:\car-tomcat-5.0.28 #让mod_jk模块知道Tomcat的位置
??workers.java_home=D:\j2sdk1.4.2_09\jre #让mod_jk模块知道jre的位置
??ps=\
??worker.list=ajp13 #模块版本
??worker.ajp13.port=8009 #工作端口,若没占用则不用修改
??worker.ajp13.host=seamankwok.iteye.com #本机,对应的Apache主机
??worker.ajp13.type=ajp13 #类型
??worker.ajp13.lbfactor=1 #代理数,不用修改
?6、在apache安装目录conf下编辑httpd.conf,加入以下代码
??#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
??LoadModule jk_module modules/mod_jk-apache-2.0.29.so
??#此处mod_jk的文件为你下载的文件
??JkWorkersFile "D:/car-tomcat-5.0.28/conf/workers.properties"
??#指定tomcat监听配置文件地址
??JkLogFile "D:/car-tomcat-5.0.28/logs/mod_jk2.log"
??#指定日志存放位置
??JkLogLevel info

??#设置虚拟主机
??《VirtualHost seamankwok.iteye.com》<virtualhost seamankwok.iteye.com=""></virtualhost>
??ServerAdmin localhost
??DocumentRoot E:/webcontent
??#您的站点项目所在路径,应与tomcat中的目录设置相同
??ServerName seamankwok.iteye.com
??DirectoryIndex index.html index.htm index.jsp
??ErrorLog logs/shsc-error_log.txt
??CustomLog logs/shsc-access_log.txt common
??JkMount /servlet/* ajp13
??#让Apache支持对servlet传送,用以Tomcat解析
??JkMount /*.jsp ajp13
??#让Apache支持对jsp传送,用以Tomcat解析
??JkMount /*.do ajp13
??#让Apache支持对.do传送,用以Tomcat解析
??《/VirtualHost》
?7、在tomcat根应用下建一个目录seamankwok,目录下新增一个index.jsp
?8、启动tomcat和apache,测试http://seamankwok.iteye.com 与 http://localhost:8080/ 是否相同

三、配置rewrite
?1、编辑httpd.conf?取消LoadModule rewrite_module modules/mod_rewrite.so前的注释
?2、编辑httpd.conf,在VirtualHost<virtualhost></virtualhost>中加入以下代码
??RewriteEngine on
??RewriteCond %{HTTP_HOST} ^[a-zA-Z0-9]+\.iteye.com$
??RewriteRule ^/?$ /%{HTTP_HOST}
??RewriteRule ^/([a-zA-Z0-9]+)\.javaeye\.com/?$ /$1/index.jsp [R]

简单的rewrite已经成功了,接下来可以慢慢学习RewriteRule 的各种语法