From: Adam Chlipala Date: Mon, 18 Feb 2008 17:17:43 +0000 (+0000) Subject: HCoop IP synonyms; PhpVersion env var X-Git-Tag: release_2010-11-19~57 X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/commitdiff_plain/e7482df3346f6976f62e3f7e07afbcf419f7411a HCoop IP synonyms; PhpVersion env var --- diff --git a/configDefault/apache.cfg b/configDefault/apache.cfg index db278ba..a58359a 100644 --- a/configDefault/apache.cfg +++ b/configDefault/apache.cfg @@ -57,4 +57,6 @@ fun backupLogDirOf version1 = else "/afs/hcoop.net/common/etc/domtool/backup/apache2/" +val defaultPhpVersion = 4 + end diff --git a/configDefault/apache.csg b/configDefault/apache.csg index adc3000..e4c9e70 100644 --- a/configDefault/apache.csg +++ b/configDefault/apache.csg @@ -24,4 +24,6 @@ signature APACHE_CONFIG = sig val realLogDirOf : string -> string val backupLogDirOf : bool -> string + val defaultPhpVersion : int + end diff --git a/lib/apache.dtl b/lib/apache.dtl index ed6f8b1..ebfbeb4 100644 --- a/lib/apache.dtl +++ b/lib/apache.dtl @@ -30,6 +30,10 @@ extern type ssl; extern val no_ssl : ssl; extern val use_cert : ssl_cert_path -> ssl; +extern type php_version; +extern val php4 : php_version; +extern val php5 : php_version; + extern val vhost : host -> Vhost => [Domain] {WebPlaces : [web_place], SSL : ssl, @@ -37,7 +41,8 @@ extern val vhost : host -> Vhost => [Domain] Group : your_group, DocumentRoot : your_path, ServerAdmin : email, - SuExec : suexec_flag}; + SuExec : suexec_flag, + PhpVersion : php_version}; {{Add a new named Apache virtual host, specifying which nodes' Apache servers should answer requests for this host, whether it should use SSL, what UNIX user and group dynamic content generators should be run as, the filesystem @@ -51,7 +56,8 @@ extern val vhostDefault : Vhost => [Domain] Group : your_group, DocumentRoot : your_path, ServerAdmin : email, - SuExec : suexec_flag}; + SuExec : suexec_flag, + PhpVersion : php_version}; {{Like vhost, but for, e.g., yourdomain.com instead of www.yourdomain.com}} diff --git a/lib/hcoop.dtl b/lib/hcoop.dtl index 3135462..b4b3109 100644 --- a/lib/hcoop.dtl +++ b/lib/hcoop.dtl @@ -13,3 +13,8 @@ extern val homeS : no_spaces -> no_spaces; val mailmanHcoop = mailmanWebHost "lists.hcoop.net"; {{Configure your domain to have its Mailman mailing lists served on the web at lists.hcoop.net.}} + +val deleuze_ip : (ip) = "69.90.123.67"; +val mire_ip : (ip) = "69.90.123.68"; +val krunk_ip : (ip) = "69.90.123.70"; +val fyodor_ip : (ip) = "64.20.38.170"; diff --git a/lib/php.dtl b/lib/php.dtl index 369bae5..5957a5e 100644 --- a/lib/php.dtl +++ b/lib/php.dtl @@ -1,7 +1,3 @@ {{PHP configuration}} -extern type php_version; -extern val php4 : php_version; -extern val php5 : php_version; - extern val phpVersion : php_version -> [^Vhost]; diff --git a/src/plugins/apache.sml b/src/plugins/apache.sml index a612cb0..eb4623a 100644 --- a/src/plugins/apache.sml +++ b/src/plugins/apache.sml @@ -145,7 +145,10 @@ val defaults = [("WebPlaces", (fn () => (EString (Domain.getUser () ^ "@" ^ Config.defaultDomain), dl))), ("SuExec", (TBase "suexec_flag", dl), - (fn () => (EVar "true", dl)))] + (fn () => (EVar "true", dl))), + ("PhpVersion", + (TBase "php_version", dl), + (fn () => (EVar "php4", dl)))] val () = app Defaults.registerDefault defaults @@ -440,6 +443,10 @@ fun vhostPost () = (!post (); write "\n"; app (TextIO.closeOut o #2) (!vhostFiles)) +val php_version = fn (EVar "php4", _) => SOME 4 + | (EVar "php5", _) => SOME 5 + | _ => NONE + fun vhostBody (env, makeFullHost) = let val places = Env.env (Env.list webPlace) (env, "WebPlaces") @@ -450,6 +457,7 @@ fun vhostBody (env, makeFullHost) = val docroot = Env.env Env.string (env, "DocumentRoot") val sadmin = Env.env Env.string (env, "ServerAdmin") val suexec = Env.env Env.bool (env, "SuExec") + val php = Env.env php_version (env, "PhpVersion") val fullHost = makeFullHost (Domain.currentDomain ()) val vhostId = fullHost ^ (if Option.isSome ssl then ".ssl" else "") @@ -515,6 +523,13 @@ fun vhostBody (env, makeFullHost) = TextIO.output (file, user); TextIO.output (file, "/DAVLock"); + if php <> Config.Apache.defaultPhpVersion then + (TextIO.output (file, "\n\tAddHandler x-httpd-php"); + TextIO.output (file, Int.toString php); + TextIO.output (file, " .php .phtml")) + else + (); + (ld, file) end) places; @@ -998,10 +1013,6 @@ val () = Env.action_one "diskCache" write path; write "\"\n")) -val php_version = fn (EVar "php4", _) => SOME 4 - | (EVar "php5", _) => SOME 5 - | _ => NONE - val () = Env.action_one "phpVersion" ("version", php_version) (fn version => (write "\tAddHandler x-httpd-php";