[kansaipm] Apache::Sessionで新規のセッションIDを指定できますか?

takimoto takimoto at miki-net.or.jp
Tue May 21 00:14:39 CDT 2002


TAKIです

すみません ちょっと教えていただけませんでしょうか > 皆さん

最近 Apache::Session を使おうとしてるのですが,判らないことがあります.
それは 
       新しいセッションIDというものはこちらで指定できるのか 否か?
ということです.

Apache::Session を解説したページでは セッションIDに 例えば 1 を指定して
やればよい という意味のことが書かれているのですが,これができないように
思うのです.
以下のようなスクリプトを作りました.

$ cat session_file.pl
#!/usr/bin/perl
use Apache::Session::File;
my $session_id = (@ARGV) ? shift(@ARGV) : undef;
my %session;
tie %session, 'Apache::Session::File', $session_id, {
        Directory => './sessions',
        LockDirectory => './lock',
};
++$session{access};
print "Your Access  : $session{access}\n";
print "Your Session : $session{_session_id}\n";
untie %session;


これを実行してみますと...

$ ./session_file.cgi
Your Access  : 1
Your Session : ab1b2162537944fd07090ba2b72522ba
[dss at inspiron3500 study]$ ./session_file.cgi ab1b2162537944fd07090ba2b72522ba
Your Access  : 2
Your Session : ab1b2162537944fd07090ba2b72522ba
[dss at inspiron3500 study]$ ./session_file.cgi ab1b2162537944fd07090ba2b72522ba
Your Access  : 3
Your Session : ab1b2162537944fd07090ba2b72522ba
[dss at inspiron3500 study]$ ./session_file.cgi ab1b2162537944fd07090ba2b72522ba
Your Access  : 4
Your Session : ab1b2162537944fd07090ba2b72522ba
[dss at inspiron3500 study]$ ./session_file.cgi 1
Object does not exist in the data store at
/usr/lib/perl5/site_perl/5.6.0/Apache/Session/Store/File.pm line 90.
$

という具合に登録されていないセッションIDを(今の場合は 1 )指定しますと,
そんなID無いよ って怒られちゃいます.

セッションIDを新規に取ってもらうだけではなくて,こちらから明示的に指定す
ることはできるのでしょうか?	

   瀧本  満  "TAKI"    takimoto at miki-net.or.jp




More information about the Kansai-pm mailing list