Enable activeCollab debugging to prevent WSOD
I got the dreaded white screen of death (WSOD) for our activeCollab installation today. I moved the hosting for this site yesterday, so it's probably related to that. I just had no idea what the problem might be. No errors on the screen, nothing written to the apache logs. Damn. This is going to be a pain to track down....
(If you didn't know, activeCollab is basically a free open-source version of Basecamp. You have to install it on your own server, but it does a pretty damn good job of mimicking the functionality of Basecamp.)
After searching around the activeCollab website, a user mentioned "turning on error messages in the config file". That was the key hint I needed. Here's the fix.
Look for this line in your config/config.php file:
define('DEBUG', false);
Change "false" to "true" and you get debugging messages printed to the screen.
The problem was clear as day once debugging was turned on. The error message mentioned not being able to access a certain file. The path to the file was pointing at the old server setup.
I figured the old path was hard-coded into some config files during setup, but I had no idea which files needed fixing. To find the offending config, I ran a find and xargs. (Run this from your ssh shell.)
find ./ac -type f | xargs grep oldpath
This command says: find everything in the "ac" directory that is a file, then grep through each file to find a mention of "oldpath", and print the results.
Turns out I needed to update cache/autoloader.php. This file contains hard-coded paths to various AC scripts. They were still pointing to the old paths. A simple search-and-replace of the old path with the new path, and our install was back in action.
Post new comment