2008-10-23 115 views
1

我需要在我们的网站上处理会员跟踪。Apache MOD_REWRITE域名Cookie

在我们的.htaccess我们有:

RewriteCond %{QUERY_STRING} affiliate=(.*) 
RewriteRule ^(.*)$ $1? [NC,R,L,co=AFFID:%1:%{HTTP:Host}:7200:/] 

它创建了一个名为AFFID与URL参数子公司的价值COOKIE。

但Cookie并不是针对整个域名的,即要去http://www.domain.com/?affiliate=bmk将AFFID Cookie设置为.www.domain.com的值bmk,但我希望ti为.domain.com,以便它可以成为在我们的安全域使用,这将是secure.domain.com

任何帮助,将不胜感激

干杯

回答

2

你为什么不只是硬编码呢?

RewriteRule ^(.*)$ $1? [NC,R,L,co=AFFID:%1:.domain.com:7200:/] 

如果你不能做到这一点,则你必须匹配域,像这样(未经):

RewriteCond %{QUERY_STRING} affiliate=(.*) 
#This would work only for xxx.dom.com or dom.com forms, not for x.y.dom.com 
RewriteCond %{HTTP_HOST} [^.]*?\.?([^.]+\.[^.]+) 
RewriteRule ^(.*)$ $1? [NC,R,L,co=AFFID:%1:.%2:7200:/] 
+1

我试过,但你输了第一场比赛,所以你只能得到该域名。 由于我们拥有的环境和多个域,我无法进行硬编码。 很高兴我在思想的正确轨道上。 – BigMadKev 2008-10-23 12:38:41