diff --git a/slapos/recipe/apache/__init__.py b/slapos/recipe/apache/__init__.py
index 6454a3431f7e89ae391f7154c26c9b160050b196..b12cd0438afcef0512e1624b97713d315cc0912a 100644
--- a/slapos/recipe/apache/__init__.py
+++ b/slapos/recipe/apache/__init__.py
@@ -35,6 +35,7 @@ import ConfigParser
 
 
 class Recipe(BaseSlapRecipe):
+
   def getTemplateFilename(self, template_name):
     return pkg_resources.resource_filename(__name__,
         'template/%s' % template_name)
@@ -53,18 +54,23 @@ class Recipe(BaseSlapRecipe):
     self.path_list.append(self.killpidfromfile)
 
     ca_conf = self.installCertificateAuthority()
-    key, certificate = self.requestCertificate('Apache Front end')
 
     # This should come from parameter.
     frontend_domain_name = self.parameter_dict.get("domain",
         "host.vifib.net")
 
-    site_url = self.installFrontendApache(
-          ip=self.getGlobalIPv6Address(),
-          port=8080, name=frontend_domain_name,
-          key=key, certificate=certificate)
+    key, certificate = self.requestCertificate(frontend_domain_name)
+
+    apache_parameter_dict = self.installFrontendApache(
+        ip=self.getGlobalIPv6Address(),
+        port=8080, name=frontend_domain_name,
+        key=key, certificate=certificate)
 
-    self.setConnectionDict(dict(site_url=site_url))
+    slave_dict = apache_parameter_dict.pop("slave_dict")
+    for reference, url in slave_dict.iteritems():
+      self.setConnectionDict(dict(site_url=url), reference)
+
+    self.setConnectionDict(dict(site_url=apache_parameter_dict["site_url"]))
     return self.path_list
 
   def installLogrotate(self):
@@ -212,12 +218,15 @@ class Recipe(BaseSlapRecipe):
     vhost_name = "apachevhost.conf"
     slave_instance_list = self.parameter_dict.get("slave_instance_list", [])
     rewrite_rule_list = []
+    slave_dict = {}
     for slave_instance in slave_instance_list:
       url = slave_instance.get("url")
-      id = str(slave_instance_list.index(slave_instance))
+      id = slave_instance.get("slave_reference").replace("-", "").lower()
       vhost_dict = dict(id=id, ip=ip, port=port,
           domain=name, url=url)
       rewrite_rule_list.append(self.generateRewriteRule(vhost_dict))
+      slave_dict[slave_instance.get("slave_reference")] = \
+          "https://%s:%s/%s" % (name, port, id)
     self.createConfigurationFile(vhost_name, "\n".join(rewrite_rule_list))
     apache_conf = self._getApacheConfigurationDict(name, ip, port)
     apache_conf['ssl_snippet'] = self.substituteTemplate(
@@ -248,4 +257,6 @@ class Recipe(BaseSlapRecipe):
               binary=self.options['httpd_binary'],
               config=apache_config_file)
           ]))
-    return "https://%s:%s/" % (name, port)
+
+    return dict(site_url="https://%s:%s/" % (name, port),
+        slave_dict=slave_dict)