From bcf547ec38a7ed4b80ac1b657b812d01a5b4ba6c Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Mon, 18 Feb 2008 15:32:59 +0000 Subject: [PATCH] Two mod_mime directives --- lib/mod_mime.dtl | 12 ++++++++++++ src/plugins/apache.sml | 22 ++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 lib/mod_mime.dtl diff --git a/lib/mod_mime.dtl b/lib/mod_mime.dtl new file mode 100644 index 0000000..d46a7af --- /dev/null +++ b/lib/mod_mime.dtl @@ -0,0 +1,12 @@ +{{Support for Apache's mod_mime}} + +extern val addType : no_spaces -> no_spaces -> [^Vhost]; +{{See the + Apache documentation.}} + +extern type filter; +extern val includes : filter; +extern val deflate : filter; +extern val addOutputFilter : [filter] -> [no_spaces] -> [^Vhost]; +{{See the + Apache documentation.}} diff --git a/src/plugins/apache.sml b/src/plugins/apache.sml index 450cfbb..97bfc69 100644 --- a/src/plugins/apache.sml +++ b/src/plugins/apache.sml @@ -988,6 +988,28 @@ val () = Env.action_one "phpVersion" write (Int.toString version); write " .php .phtml\n")) +val () = Env.action_two "addType" + ("mime type", Env.string, "extension", Env.string) + (fn (mt, ext) => (write "\tAddType "; + write mt; + write " "; + write ext; + write "\n")) + +val filter = fn (EVar "includes", _) => SOME "INCLUDES" + | (EVar "deflate", _) => SOME "DEFLATE" + | _ => NONE + +val () = Env.action_two "addOutputFilter" + ("filters", Env.list filter, "extensions", Env.list Env.string) + (fn (f :: fs, exts as (_ :: _)) => + (write "\tAddOutputFilter "; + write f; + app (fn f => (write ";"; write f)) fs; + app (fn ext => (write " "; write ext)) exts; + write "\n") + | _ => ()) + val () = Domain.registerResetLocal (fn () => ignore (OS.Process.system (Config.rm ^ " -rf /var/domtool/vhosts/*"))) -- 2.20.1