lib: add webSsl directive
[hcoop/domtool2.git] / lib / easy_domain.dtl
index 61ae8f8..0f05a7c 100644 (file)
@@ -37,6 +37,26 @@ val webAtIp =
     end
   end;
 
+val webSsl = \ host -> \ certFile -> \\ config : Vhost -> begin
+  n <- DefaultWebNode;
+  webAt n host where
+    SSL = certFile;
+  with config end;
+
+  force_ssl <- ForceSSL;
+  if force_ssl then
+    webAt n host where
+      SSL = no_ssl;
+    with
+      rewriteRule "^(.*)$" "https://%{HTTP_HOST}$1" [redirect];
+    end;
+  else
+    webAt n host where
+      SSL = no_ssl;
+    with config end;
+  end;
+end;
+
 val addDefaultAlias = begin
   mailbox <- Mailbox;
   source <- DefaultAliasSource;