Index: Keeper.pm =================================================================== --- Keeper.pm (revision 252) +++ Keeper.pm (revision 253) @@ -7,6 +7,7 @@ use Apache::Cookie; use Apache::Session::File; use Apache::Session::Postgres; +use Apache::Session::Memcached; use Contenido::Globals; use Data::Dumper; @@ -205,10 +206,22 @@ Handle => $keeper->SQL, }; }; + } elsif ( $state->{session}->storage eq 'MEMCACHED' ) { + eval { + tie %session, 'Apache::Session::Memcached', $sid, { + Handler => $keeper->{session}->MEMD, + Expiration => $state->{session}->{lifetime}, +# Servers => $state->{session}->memcached_servers, +# NoRehash => 1, +# Readonly => 0, +# Debug => $DEBUG, +# CompressThreshold => 10_000 + }; + }; } else { eval { tie %session, 'Apache::Session::File', $sid, { - Directory => $state->session->session_dir, + Directory => $state->{session}->session_dir, }; }; } @@ -231,6 +244,18 @@ Handle => $keeper->SQL, }; }; + } elsif ( $state->{session}->storage eq 'MEMCACHED' ) { + eval { + tie %session, 'Apache::Session::Memcached', undef, { + Handler => $keeper->{session}->MEMD, + Expiration => $state->{session}->{lifetime}, +# Servers => $state->{session}->memcached_servers, +# NoRehash => 1, +# Readonly => 0, +# Debug => $DEBUG, +# CompressThreshold => 10_000 + }; + }; } else { eval { tie %session, 'Apache::Session::File', undef, {