apache-httpd: Make 2.4 the default

The NixOS 14.11 release is a good time to finally make 2.4 the
default.
This commit is contained in:
Eelco Dolstra 2014-11-06 14:27:02 +01:00
parent 85d23f5292
commit b3eb981a95
4 changed files with 22 additions and 9 deletions

View File

@ -11,6 +11,19 @@ following incompatible changes:
<itemizedlist>
<listitem><para>The default version of Apache httpd is now 2.4. If
you use the <option>extraConfig</option> option to pass literal
Apache configuration text, you may need to update it — see <link
xlink:href="http://httpd.apache.org/docs/2.4/upgrading.html">Apaches
documentation</link> for details. If you wish to continue to use
httpd 2.2, add the following line to your NixOS configuration:
<programlisting>
services.httpd.package = pkgs.apacheHttpd_2_2;
</programlisting>
</para></listitem>
<listitem><para>The host side of a container virtual Ethernet pair
is now called <literal>ve-<replaceable>container-name</replaceable></literal>
rather than <literal>c-<replaceable>container-name</replaceable></literal>.</para></listitem>

View File

@ -109,6 +109,8 @@ let
"mpm_${mainCfg.multiProcessingModule}"
"authz_core"
"unixd"
"cache" "cache_disk"
"slotmem_shm"
]
++ (if mainCfg.multiProcessingModule == "prefork" then [ "cgi" ] else [ "cgid" ])
++ optional enableSSL "ssl"
@ -420,8 +422,7 @@ in
package = mkOption {
type = types.package;
default = pkgs.apacheHttpd.override { mpm = mainCfg.multiProcessingModule; };
example = literalExample "pkgs.apacheHttpd_2_4";
default = pkgs.apacheHttpd;
description = ''
Overridable attribute of the Apache HTTP Server package to use.
'';
@ -593,11 +594,11 @@ in
###### implementation
config = mkIf config.services.httpd.enable {
assertions = [ { assertion = mainCfg.enableSSL == true
-> mainCfg.sslServerCert != null
&& mainCfg.sslServerKey != null;
message = "SSL is enabled for HTTPD, but sslServerCert and/or sslServerKey haven't been specified."; }
message = "SSL is enabled for httpd, but sslServerCert and/or sslServerKey haven't been specified."; }
];
users.extraUsers = optionalAttrs (mainCfg.user == "wwwrun") (singleton

View File

@ -22,20 +22,19 @@ in
{ services.httpd.enable = true;
services.httpd.adminAddr = "bar@example.org";
services.httpd.extraModules = ["proxy_balancer"];
services.httpd.extraModules = [ "proxy_balancer" "lbmethod_byrequests" ];
services.httpd.extraConfig =
''
ExtendedStatus on
<Location /server-status>
Order deny,allow
Allow from all
Require all granted
SetHandler server-status
</Location>
<Proxy balancer://cluster>
Allow from all
Require all granted
BalancerMember http://${nodes.backend1.config.networking.hostName} retry=0
BalancerMember http://${nodes.backend2.config.networking.hostName} retry=0
</Proxy>

View File

@ -7342,7 +7342,7 @@ let
rdf4store = callPackage ../servers/http/4store { };
apacheHttpd = pkgs.apacheHttpd_2_2;
apacheHttpd = pkgs.apacheHttpd_2_4;
apacheHttpd_2_2 = callPackage ../servers/http/apache-httpd/2.2.nix {
sslSupport = true;