Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Installing SilverStripe /

Getting SilverStripe up and running on your computer and on your web server.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Uncaught Zend_Cache_Exception: cache_dir must be a directory


Reply


33 Posts   24178 Views

Avatar
quiet_islander

Community Member, 17 Posts

3 June 2010 at 10:44pm

I get the same error whenever I try to log in to the CMS. There are no problems when I am on the front end.
In my case, the line 90 originally read 'cache_dir' => null. If I change it to another directory( for example "../silverstripe-cache/") which does exist on the server, I can open the CMS in my current browser successfully. However, as long as I close the browser and open the site again or simply open the site in another browser, I get stuck at CMS loading page. I have firebugs installed so I checked the errors. There are 13 of them and they are mostly about missing important javascript files. Any ideas? I have getting insane about the problem for 3 days already!

Avatar
turtleline

Community Member, 6 Posts

4 June 2010 at 2:03pm

I have just experienced this "Uncaught Zend_Cache_Exception: cache_dir must be a directory" error on a site we upgraded to 2.4.0 a while back. Has been a while since we tried to log into admin.

After a bit of going around in circles was lead to the solution which has worked for me adding a line to /sapphire/_config.php outlined here:
http://open.silverstripe.org/changeset/105468

Avatar
quiet_islander

Community Member, 17 Posts

4 June 2010 at 10:11pm

@turtleline: Thanks but I still get stuck and receive javascript errors when trying to log in.

However, I have found something interesting. I can make the log in work by adding "?isDev=1" at end of the url. Without that I will get stuck at the CMS log in page. Anyone got an idea?

Avatar
LinseyM

Community Member, 99 Posts

5 June 2010 at 4:07am

I got this error today on a clean install of 2.4.0 in a linux box.

I could view site pages but trying to access "/admin" threw the error up.

I fixed it by following one of the prevoius support ticket links and adding a line of code to "_config.php":

// Zend_Cache temp directory setting
$_ENV['TMPDIR'] = TEMP_FOLDER;

No idea exactly what it does, but it worked for me so thought I'd just pass it on!

Linsey

Avatar
atticusservices

Community Member, 10 Posts

11 June 2010 at 6:42am

@quiet_islander

Regarding the problem of the cms not loading without isDev ... This sounds like the same problem I was having. It had to do with the javascript combine_files feature of silverstripe. If you open your browser's error console you should see a bunch of javascript errors.

My fix (while not so elegant) did worked, however someone else made a recommendation for a better solution but I have not tried it yet.

http://silverstripe.org/general-questions/show/286086

Avatar
atticusservices

Community Member, 10 Posts

11 June 2010 at 6:51am

Edited: 11/06/2010 6:52am

@turtleline & @LinseyM

Thanks. This sounds like a much better solution than the one I previously suggested as it doesn't involved editing the thirdparty extension.

Avatar
yurigoul

Community Member, 202 Posts

3 July 2010 at 1:58am

Well, comments like the above comment is THE reason we need a report button ...

Avatar
tazzydemon

Community Member, 124 Posts

19 August 2010 at 12:48pm

I am guessing this happens on Linux installs.

Its a permissions issue. On my centos/virtualmin server when running apache in mod_php mode the files created by the application are owned by one user whereas the server is of course apache. I compounded the issue by being forced to change halfway from mod_fcigd to mod_php because the installer did not see mod_rewrite working in mod_fcgid (it was and now I have changed back and thats another issue)

Just go to /tmp and then chmod -R g+w silverstripe-cache-whatever-your-path-is

Failing that then open up the permissions on /tmp

You might then want to reinstall the app if thats where it failed.

Julian