我用cgi.pm生成cookie:
my $cookie = $q->cookie( -name => "id",
-value => "lalala",
-domain => "10.130.106.172",
-expires => "+60m",
-secure => 1);
print $q->header( -type => "text/html", -cookie => $cookie,
-lang => 'zh_CN',
-charset => 'gb_2312');
然后我发现在用户的机器上除了有如下的cookie,
*
id
zjy
10.130.106.172/
1537
1329298432
30049208
3987594096
30049199
*
还有另外两个cookie:
__utma
102378241.1989976547.1259506908.1260113764.1260199673.8
10.130.106.172/
1600
3378078336
30192884
3626083232
30046033
*
__utmz
102378241.1259506908.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
10.130.106.172/
1600
2608373632
30081133
3748331680
30044420
接着我再用代码去check cookie的时候,发现是不能找到名字为id的cookie的,但另外两个可以找到
use CGI;
use Data::Dumper;
my $q = new CGI;
my $cookie = $q->cookie(-name => "__utma");
if(defined $cookie){
error( $q, "exists cookie, $cookie");
}
else{
error( $q, "no cookie exists");
}
在用户端纪录cookie的文件中,另外两个cookie是在id的cookie纪录的前面
我现在分析下来是浏览器只发送了__utma和__utmz,而没有发送id对应的cookie
但我不知道怎么会这样,更不知道如何解决这个问题
版上有兄弟知道吗?能否讲一下这个问题该怎么解决?多谢多谢!
--
FROM 124.160.96.*