Since normal users cannot access the server mailman is on directly,
they also can't set up a vhost to redirect http -> https for mailman.
Use MailmanForceSSL to control generating a redirect to https for http
vhosts. Silently does nothing when used with a vhost with an SSL
cert (would just generate a redirect loop).
var MailNodes : [mail_node] = ["minsky"];
var MailManPlaces : [mailman_place] = [mailman_place_default mailman_node];
var MailNodes : [mail_node] = ["minsky"];
var MailManPlaces : [mailman_place] = [mailman_place_default mailman_node];
+var MailmanForceSSL : bool = false;
var DefaultWebNode : web_node = web_node;
\ No newline at end of file
var DefaultWebNode : web_node = web_node;
\ No newline at end of file
extern val mailmanVhost : host -> [Domain]
{MailmanPlaces : [mailman_place],
SSL : ssl,
extern val mailmanVhost : host -> [Domain]
{MailmanPlaces : [mailman_place],
SSL : ssl,
+ MailmanForceSSL : bool,
User : your_user,
ServerAdmin : email};
{{Create an Apache virtual host to serve as the web interface for some Mailman
User : your_user,
ServerAdmin : email};
{{Create an Apache virtual host to serve as the web interface for some Mailman
val places = Env.env (Env.list mailmanPlace) (env, "MailmanPlaces")
val ssl = Env.env Apache.ssl (env, "SSL")
val places = Env.env (Env.list mailmanPlace) (env, "MailmanPlaces")
val ssl = Env.env Apache.ssl (env, "SSL")
+ val forcessl = Env.env Env.bool (env, "MailmanForceSSL")
val user = Env.env Env.string (env, "User")
val sadmin = Env.env Env.string (env, "ServerAdmin")
val user = Env.env Env.string (env, "User")
val sadmin = Env.env Env.string (env, "ServerAdmin")
(print "\n\tSSLEngine on\n\tSSLCertificateFile ";
print cert;
print "\n")
(print "\n\tSSLEngine on\n\tSSLCertificateFile ";
print cert;
print "\n")
+ | NONE => if forcessl then
+ (print "RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R,L]")
+ else
+ ();
(*
print " SuexecUserGroup list list\n";
print "\n";
(*
print " SuexecUserGroup list list\n";
print "\n";