WebCalendar one-click install

Hello, I just installed the current version of WebCalendar offered on dreamhost’s one-click install page (I think that’s ver. 1.2.7, although it’s not completely clear). Although the program has installed and does run, every time I try to change the system settings for this application, I get an error message: “Maximum execution time of 30 seconds exceeded.”

Now, most of the advice I’ve found says that the solution is to change the php.ini file to increase the execution time limit. I haven’t done that yet, in part because I can’t believe the commands I’m using are so resource intensive as to require more than 30 seconds. (I’ve tried making changes repeatedly at different times of the day, so I don’t think the servers are overloaded either.)

Other advice I’ve found suggests the problem might be with access to the /tmp file where temporary files are supposed to be stored. I can’t seem to find this directory, and I wonder if I did something on the one-click install to put it in an location that is inaccessible to the program.

I would be grateful for any insightful replies, even if the answer is, “yes, you really do have to increase the execution time limit.”

Try looking in the settings.php file and comment out the line that sets db_cachedir.

Looking for the db_cachedir in the settings.php file was the hint I needed. Thanks, sXi.

I didn’t just want to comment out the line without understanding the consequences. After a little more research, here’s the solution that worked for me:

By way of background, the one-click installation of WebCalendar prompts users for the location of the tmp directory. By default, the value is “/tmp.” Not knowing any better, and seeing no obvious helpful hints in the wizard or the documentation, I left the default value as it was. Unfortunately, the wizard does not create such a directory, and no such directory existed under my web site’s root (www.example.org).

To fix the problem, I:

  1. used WebFTP to locate the settings.php file (it was under www.example.org/webcalendar/includes, which also was not intuitively obvious to me);
  2. opened the settings.php file using the source editor;
  3. found the line that sets db_cachedir (not difficult–it settings.php was a very short file);
  4. simply removed the virgule ("/") so that the line now reads “db_cachedir: tmp” (without the quotation marks); and
  5. saved the file.

Then I created a subdirectory named “tmp” in the webcalendar directory (i.e., www.example.org/webcalendar/tmp) and relaunched the program.

Problem solved. I suppose I could have just created a “tmp” subdirectory in the root, but then I wouldn’t have all of my webcalendar files together.