[imp] Login (horde auth = 'imp') always returns "Login failed for some reason..."
David Peoples
davidp@touringcyclist.com
Fri, 2 Nov 2001 00:00:15 -0600
That behavior of three sess_* files created, then three more, is definitely
not normal. Each file represents a different session, so it's no wonder the
state isn't getting saved. But I can't say for certain why this is happening.
On my machine, loading the http://example.com/horde/imp page produces one
sess_* file, 38 bytes long. Successfully logging in makes that file grow to
4039 bytes, and creates no other sess_* files. That is the behavior you want
to aim for. <g>
It is as if the individual pages on your machine are resetting the
session_id() variable somewhere. Or else your copy of PHP is messed up
somehow and not doing internally what it is supposed to with session_id().
Three pages are loaded to get to the login screen.
Do you perhaps have an auto_prepend_file or auto_append_file set up? If so,
show us the contents. Maybe something in there is messing you up. And since
this is looking more like a PHP problem, show us the output of phpinfo().
David
On Thursday 01 November 2001 05:14 pm, you wrote:
> OK, I switched over to file-based session storage, and confirmed that
> various "sess_*" files are being created. I'm not familiar with PHP
> session-management, but I'll describe what I observed:
>
> Immediately after pointing my browser at
> "http://www.example.com/horde/imp", I got the login screen. Three
> "sess_*" files were created, two of which were 0-length and the third
> 38-bytes long. It's contents were:
>
> prefs_cache|a:1:{s:7:"_filled";a:0:{}}
>
> After attempting (and failing) to log in, I noticed that 3 more "sess_*"
> files were created, one of which was 0-length, one 38 bytes long, and one
> 536 bytes long. This last one appeared to have meaningful information in
> it, such as values for "userID", "password", "timestamp", "user", "pass",
> etc.
>
> The log below shows the value of $GLOBALS[HTTP_SESSION_VARS]['imp'] before
> and after it is assigned &$imp. Before, it's value is [0]. Afterwards,
> its value is [1]. However, in IMP::setupSession, it still fails the
> isset() test.
>
> Based on what's happening here, I'm wondering whether I've screwed up some
> fundamental PHP or Apache configuration setting somewhere. How is
> $GLOBALS[HTTP_SESSION_VARS]['imp'] set and preserved across the individual
> file-level scope?...
>
> (BTW, sorry to be cluttering up the mailing list this way. I DO
> appreciate the advice and help folks have been supplying...)
>
> Jim