On 17 Mar 2011 17h40 WET, mitchelljj98@gmail.com wrote:
[1 <text/plain; ISO-8859-1 (7bit)>] For java webapps within Apache Tomcat I use a web.xml file which contains the global variables that are specific to that server so that the production server will have one web.xml file and the test server will have a different web.xml file.
How can I do something similar for global variables that vary depending on the server (i.e. production, test, demo) within Drupal?
Several ways to do that. 1. There's the approach of using a diferent setting.php with a conditional inclusion as already described in this thread. 2. There's the approach of using a *single* settings.php file and instead do the conditional logic inside where you set the global variables you want. Use drush to activate/deactivate the settings. drush vset mysite_dev 1 This creates a variable that can be used in a if like: // Do site specific stuff here. if (variable_get('mysite_dev', 0)) { /* do stuff for dev site */ } You can use drush vdel to delete the variable. If you want to have a more structured approach create constante like like this: define('MYSITE_DEV', 1); define('MYSITE_STAGE', 2); define('MYSITE_PROD', 3); and do: drush vset mysite_version 1 for making it dev if (variable_get('mysite_version' 0) == MYSITE_DEV) { /* do stuff for dev site */ } and so on for the other versions. --- appa