2008-04-08

一个apache重写的应用

关键字: apache rewrite
之前的网站渠道统计一直是前端apache来做的,分析渠道号,写入cookie,供后台系统使用。但是由于人事变动,之前的apache rewrite的系统出了些问题,而运维部门的人没能按照需求把系统改好,所以又得我自己出马了!

需求:渠道代码 http://aa.my.com/ref/st_xxx
目的:利用apache write,把渠道号码和refer头信息取出来,放入到my.com根域内,然后重定向到tomcat的bb应用上去

解决办法:当然直接利用apache肯定可以全部做,但是由于我之前没有接触过linux和apache(别鄙视我啊),所以都是先买现卖的,而且这个需求很着急用。因为apache rewrite中操作cookie的代码不知道怎么写,所以我把需求拆分了两部,让apache把渠道号拿出来以参数的形式传递给tomcat应用,然后tomcat的controller负责分析渠道号,然后写入cookie,最后重定向到自己!

如:
渠道请求url: http://aa.my.com/ref/st_xxx
apache rewrite1: http://aa.my.com/bb/v/index.html?channel=st_xxx
tomcat index.html:解析channel,写人my.com根域cookie,redirct到http://aa.my.com/bb/v/index.html
apache rewrite2: http://aa.my.com/bb/v/index.html
tomcat index.html:没有channel参数,直接进入网站逻辑

over!感觉这么做有些白痴,这些流程完全可以在apache端完成的,不过先应付上项目,接下来找时间把apache write cookie的相关内容看下再做修改了。

httpd.conf的配置:
<VirtualHost *:80>
ServerName aa.my.com
RewriteEngine On
RewriteRule ^/ref/(.+)$ /bb/v/index.html\?channel=$1 [R,L]
RewriteRule ^\/$ /bb [R,L]
JkMount /* examples
</VirtualHost>
评论
发表评论

您还没有登录,请登录后发表评论

kj2ff
搜索本博客
我的相册
39723bb3-0a9b-3357-b6b8-b9ae94144985-thumb
001
共 3 张
最近加入圈子
存档
最新评论