The database configuration table row for SESSION_WRITE_DIRECTORY keeps getting reset to <my-renamed-admin>/includes/cache, and the admin page would not load until I created this directory and made it writable.
Printable View
The database configuration table row for SESSION_WRITE_DIRECTORY keeps getting reset to <my-renamed-admin>/includes/cache, and the admin page would not load until I created this directory and made it writable.
I've not seen this happen, at least not on a multitude of linux servers. What's your environment?
Fedora Core 13, Apache, PHP 5.3.15.
I just did a test by changing the value for SESSION_WRITE_DIRECTORY to point to an invalid folder. Then went to the admin URL and it let me log in and work fine without any unexpected redirects.
Help me trigger the problem. Were you starting from a point of having just an import of an old database which had the wrong SESSION_WRITE_DIRECTORY set? Or was it an old configure.php that was pointing to wrong folders too? or both?
I would assume that all of the logic for the symptom you're reporting is handled by /admin/includes/init_includes/init_cache_key_check.php
Upon looking at it I can only think of one thing that might be a problem, and that's if you had put the init_cache_key_check.php file into the init_includes/overrides folder for some reason ... in which case it might generate the wrong path. We'll consider addressing that in a future version, but there should be no need to do an override on that file, so that issue feels minor.
Not sure how exactly to trigger what you're reporting though.
The only thing old was an old configure.php file, which I pulled from my 151 installation and updated the catalog dir, logs dir, db, etc. I didn't notice any new entries in this file that were added since 1.5.1, but maybe I missed something. The file is attached.
A new db with test data was used. No other changes from vanilla 1.5.3 were made.
Hmmmm. Even testing with that I can't seem to trigger it. :(
If I rmdir , and then set SESSION_WRITE_DIRECTORY configuration_value to "/tmp" it happens.
I have to mkdir <my cart dir>/<my admin dir>/includes/cache then chmod 777 to make it work.
Why would SESSION_WRITE_DIRECTORY get set to <admin_dir>/includes/cache, a directory which doesn't exist in the default installation in the first place?
Okay, I've triggered it.
And I see why it's doing it. (wrong logic detecting the root folder, and then a redirect that always happens if the folder is missing. So ... don't delete the folder :P )
Now the challenge is determining how critical it is.
Wondering what the workflow process was that got you to the point of deleting the cache folder?
The value of that db row when it's created is "/tmp". There is no admin/includes/cache folder in the default installation. So why did it get changed to a folder which doesn't exist?