我想使用CGI :: Session模块来实现我的网站会话。 我希望以适合我想要的域的方式更改会话cookie。
例如,我有两个网站www.mysite.com
和dev.mysite.com
在这种情况下,我希望会话cookie域为mysite.com
。
我尝试过使用该模块,但它只保留了脚本的域名,我想更改它。
有办法吗?因为我查看了文档并且没有找到任何内容。
答案 0 :(得分:2)
首先,如果您希望Cookie对www.mysite.com
和dev.mysite.com
都可见,则Cookie必须与.mysite.com
绑定,而不是mysite.com
。< / p>
关于这个问题。
print $session->header( ... );
被记录为
的快捷方式my $cookie = CGI::Cookie->new(
-name => $session->name,
-value => $session->id,
);
print $cgi->header( -cookie => $cookie, ... );
所以你可以使用
my $cookie = CGI::Cookie->new(
-name => $session->name,
-value => $session->id,
-domain => '.mysite.com',
);
print $cgi->header( -cookie => $cookie );