From 5742e4c99f53f9dbbcc962e9f967a4c377c209b9 Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Tue, 29 Jul 2014 02:46:41 -0400
Subject: [PATCH] Fixed: FS#3581 - Website unaccessible under some circumstances when using seo redirection *.domain to www.domain (only for apache2, nginx still to do)

---
 server/conf/vhost.conf.master                   |    2 ++
 server/plugins-available/apache2_plugin.inc.php |    2 ++
 server/plugins-available/nginx_plugin.inc.php   |    2 ++
 3 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master
index 96b3443..c2af3ed 100644
--- a/server/conf/vhost.conf.master
+++ b/server/conf/vhost.conf.master
@@ -339,10 +339,12 @@
 <tmpl_if name="rewrite_enabled">
 		RewriteEngine on
 <tmpl_if name='seo_redirect_enabled'>
+		RewriteCond %{HTTP_HOST} <tmpl_var name='seo_base_domain'>$ [NC]
 		RewriteCond %{HTTP_HOST} <tmpl_var name='seo_redirect_operator'>^<tmpl_var name='seo_redirect_origin_domain'>$ [NC]
 		RewriteRule ^(.*)$ http<tmpl_if name='ssl_enabled'>s</tmpl_if>://<tmpl_var name='seo_redirect_target_domain'>$1 [R=301,L]
 </tmpl_if>
 <tmpl_loop name="alias_seo_redirects">
+		RewriteCond %{HTTP_HOST} <tmpl_var name='alias_seo_base_domain'>$ [NC]
 		RewriteCond %{HTTP_HOST} <tmpl_var name='alias_seo_redirect_operator'>^<tmpl_var name='alias_seo_redirect_origin_domain'>$ [NC]
 		RewriteRule ^(.*)$ http<tmpl_if name='ssl_enabled'>s</tmpl_if>://<tmpl_var name='alias_seo_redirect_target_domain'>$1 [R=301,L]
 </tmpl_loop>
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index addcd13..525592d 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -2951,6 +2951,8 @@
 			$seo_redirects[$prefix.'seo_redirect_target_domain'] = $web['domain'];
 			$seo_redirects[$prefix.'seo_redirect_operator'] = '!';
 		}
+		
+		$seo_redirects[$prefix.'seo_base_domain'] = str_replace('.', '\.', $web['domain']);
 		return $seo_redirects;
 	}
 
diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index d83ecf4..408a76b 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -2842,6 +2842,8 @@
 				$seo_redirects[$prefix.'seo_redirect_operator'] = '!=';
 			}
 		}
+		
+		$seo_redirects[$prefix.'seo_base_domain'] = str_replace('.', '\.', $web['domain']);
 		return $seo_redirects;
 	}
 

--
Gitblit v1.9.1