A WSOD after installing a Master Config probably means that the new config isn't being loaded correctly. This could be because the include path in EE's config.php
doesn't correctly refer to the Master Config file, or because the environment-based path generated by the master config doesn't correctly refer to an environment config file. It could also be a syntax error somewhere in any of the config files.
Some troubleshooting steps:
- In your EE config.php, before you include the master config file,
echo()
the path in your include statement. If you see the path displayed when you reload the page, it means EE's config.php
is being loaded properly, but your Master Config file (config.master.php
) file isn't. There's probably a typo in the path, such as an extra/missing slash, an extra/missing ...
, etc.
- In your Master Config file, insert an
exit("test")
at the very beginning. If when you reload the page you see this message (probably twice), it means your Master Config file is being loaded properly, but some setting is causing an error.
- Try block-commenting out config settings until it works. If you comment out all your config items and still have a WSOD, probably there's an error loading your environment config file, so the troubleshooting process repeats, one layer recursed...
- First, check to make sure the domain name you're accessing matches the hostname of an environment you have specified, and that the environment has its
env
variable/constant defined. If it does, check to make sure your config.[env].php
file actually exists.
- In the Master Config file, just before the
include
statement that includes the environment config file, echo()
that path, and check as before to make sure it doesn't have typos.
- Try adding a
exit("test");
at the top of your environment config file. If you see that message when you reload the page, it means the config file is being loaded properly, but some setting is causing issues. Start block-commenting out config directives until it works.
(Since you mention that this Master Config works on your local machine, but not on the server, it's probably an issue with the hostname not matching up with a defined environment/env
in the master config. In that case, you could skip to step 4, but I'm including the whole process for the sake of completeness...)
p.s. Also double-check to make sure that files on your server are exactly the same as the files on your local machine... I know that sounds obvious, but I cringe at how many times (before the age of easy Git deployments) I saw a WSOD because I forgot to upload a file...
exit('here');
to your env config, does that show when loading the index on the troublesome host? That should confirm at least that the right env config is being loaded. – Iain Urquhart Jan 20 '14 at 5:02