如何更改 CGI::Session 中的域?
How to change domain in CGI::Session?
我想使用 CGI::Session 模块来实现我的网站会话。
我想以适合我想要的域的方式更改会话 cookie。
例如,我有两个站点,www.mysite.com
和 dev.mysite.com
在这种情况下,我希望会话 cookie 域为 mysite.com
。
我尝试使用该模块,但它只保留脚本的域,我想更改它。
有办法吗?因为我查看了文档并没有找到任何东西。
首先,如果您希望 www.mysite.com
和 dev.mysite.com
都可以看到 cookie,则需要将 cookie 绑定到 .mysite.com
,而不是 mysite.com
.
关于问题。
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 );
我想使用 CGI::Session 模块来实现我的网站会话。 我想以适合我想要的域的方式更改会话 cookie。
例如,我有两个站点,www.mysite.com
和 dev.mysite.com
在这种情况下,我希望会话 cookie 域为 mysite.com
。
我尝试使用该模块,但它只保留脚本的域,我想更改它。
有办法吗?因为我查看了文档并没有找到任何东西。
首先,如果您希望 www.mysite.com
和 dev.mysite.com
都可以看到 cookie,则需要将 cookie 绑定到 .mysite.com
,而不是 mysite.com
.
关于问题。
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 );