diff --git a/web_server/disable.provision.inc b/web_server/disable.provision.inc index bc13a8c..5c66e80 100644 --- a/web_server/disable.provision.inc +++ b/web_server/disable.provision.inc @@ -5,7 +5,7 @@ */ function drush_provision_apache_provision_disable($url = NULL) { drush_set_option('redirect_url', drush_get_option('web_disable_url')); - _provision_apache_create_vhost_config($url, _provision_apache_redirect_template()); + _provision_apache_create_vhost_config($url, _provision_apache_disabled_template()); _provision_apache_restart_apache(); } diff --git a/web_server/provision_apache.drush.inc b/web_server/provision_apache.drush.inc index 0053546..8c4b854 100644 --- a/web_server/provision_apache.drush.inc +++ b/web_server/provision_apache.drush.inc @@ -58,13 +58,20 @@ function _provision_apache_default_template() { } /** - * The default template for disabled sites + * The template for site redirection */ function _provision_apache_redirect_template() { return file_get_contents(dirname(__FILE__) ."/provision_apache_vhost_redirect.tpl.php"); } /** + * The default template for disabled sites + */ +function _provision_apache_disabled_template() { + return file_get_contents(dirname(__FILE__) ."/provision_apache_vhost_disabled.tpl.php"); +} + +/** * The template for platform configuration settings */ function _provision_apache_platform_template() { @@ -86,6 +93,9 @@ function _provision_apache_create_vhost_config($url, $template = NULL) { if (is_null($template)) { $template = _provision_apache_default_template(); } + if ($options['redirection']) { + $template .= _provision_apache_redirect_template(); + } if (!is_array($options['aliases'])) { $options['aliases'] = explode(",", $options['aliases']); } diff --git a/web_server/provision_apache_vhost.tpl.php b/web_server/provision_apache_vhost.tpl.php index 0f1e64c..c8c3e7b 100644 --- a/web_server/provision_apache_vhost.tpl.php +++ b/web_server/provision_apache_vhost.tpl.php @@ -6,7 +6,7 @@ ServerName - ServerAlias diff --git a/web_server/provision_apache_vhost_disabled.tpl.php b/web_server/provision_apache_vhost_disabled.tpl.php new file mode 100644 index 0000000..d81a433 --- /dev/null +++ b/web_server/provision_apache_vhost_disabled.tpl.php @@ -0,0 +1,20 @@ + + + ServerAdmin + + DocumentRoot + + ServerName + + RewriteEngine on + # the ? at the end is to remove any query string in the original url + RewriteRule ^(.*)$ ? + + + ServerAlias + + + diff --git a/web_server/provision_apache_vhost_redirect.tpl.php b/web_server/provision_apache_vhost_redirect.tpl.php index d81a433..e804e19 100644 --- a/web_server/provision_apache_vhost_redirect.tpl.php +++ b/web_server/provision_apache_vhost_redirect.tpl.php @@ -1,20 +1,9 @@ - - ServerAdmin - - DocumentRoot - - ServerName + + ServerAdmin + - RewriteEngine on - # the ? at the end is to remove any query string in the original url - RewriteRule ^(.*)$ ? - - - ServerAlias - + ServerName + RedirectMatch permanent ^(.*) http://$1 diff --git a/web_server/restore.provision.inc b/web_server/restore.provision.inc index 71209c6..3540f4f 100644 --- a/web_server/restore.provision.inc +++ b/web_server/restore.provision.inc @@ -5,7 +5,7 @@ */ function drush_provision_apache_pre_provision_restore($url) { drush_set_option('redirect_url', drush_get_option('web_maintenance_url')); - _provision_apache_create_vhost_config($url, _provision_apache_redirect_template()); + _provision_apache_create_vhost_config($url, _provision_apache_disabled_template()); _provision_apache_restart_apache(); }