Commit graph

63 commits

Author SHA1 Message Date
aszlig f9831a94c9
apache-httpd: Simplify all versionOlder calls.
We now just have a simple attribute called "version24" which replaces all those
pesky versionOlder that were spreading throughout the file and makes things way
more readable.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-17 17:47:30 +02:00
aszlig 919e6e55a9
apache-httpd: Create runtime dir for version 2.4.
By default the path is determined related to ServerRoot. Unfortunately
ServerRoot is pointing to the Nix store and the web server can't write to it.

We now create a directory called "runtime" withen the stateDir and point
DefaultRuntimeDir to it.

For more information on the DefaultRuntimeDir directive, please see:

http://httpd.apache.org/docs/2.4/mod/core.html#defaultruntimedir

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-17 17:38:43 +02:00
aszlig 5655ec0efa
apache-httpd: Avoid NameVirtualHost in >= v2.4.
NameVirtualHost no longer has any effect on version 2.4 and just emits ugly
warnings, so let's not use it if we use 2.4.

More information: http://httpd.apache.org/docs/2.4/upgrading.html#misc

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-17 17:03:50 +02:00
aszlig a88453fbaa
apache-httpd: Properly wrap access directives.
The Order/Deny directives are deprecated in version 2.4, so we're going to
define two wrappers for allDenied and allGranted in order to properly generate
configurations for both version 2.2 and 2.4.

For more information an access control changes, see:

http://httpd.apache.org/docs/2.4/upgrading.html#access

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-17 16:57:18 +02:00
aszlig 3acd98b040
apache-httpd: Add unixd for 2.4, needed by "User".
Beginning with 2.4 mod_unixd is needed to supply Unix usernames and groups for
the web server. For details please have a look at:

http://httpd.apache.org/docs/2.4/upgrading.html#commonproblems

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-17 15:34:08 +02:00
aszlig 3ad8fac5a2
apache-httpd: Dynamically load MPM module in v2.4.
Now, MPMs can be loaded at runtime and it's no longer required to compile in one
of the MPM modules statically. So, if version is >= 2.4, load the MPM module
corresponding to the multiProcessingModule value of the service module.

For details, please see: http://httpd.apache.org/docs/2.4/mpm.html

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-17 15:17:48 +02:00
aszlig 18076e001a
apache-httpd: Use authn_core for version >= 2.3.
Beginning with version 2.3, the authn were refactored. As a result, authn_alias
is now part of the new module authn_core, so let's use authn_core instead of
authn_alias.

For details please see: http://httpd.apache.org/docs/2.4/upgrading.html#misc

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-10-17 15:11:53 +02:00
Eelco Dolstra d5d8acfacd Assign uid/gid 54 to wwwrun 2012-08-03 11:05:25 -04:00
Eelco Dolstra 0a0c28f812 Revert "Add services.httpd.fixUidAndGid option to assign reliable numeric UID and GID for the Apache user."
This reverts commit 0ef085d58a.
2012-08-03 10:52:53 -04:00
Peter Simons 0ef085d58a Add services.httpd.fixUidAndGid option to assign reliable numeric UID and GID for the Apache user.
The option is disabled by default so that previously existing installations
aren't affected.

If you'd like to migrate to the fixed numeric id for Apache, set "fixUidAndGid
= true", edit the file "/etc/groups" and replace the old GID value with 54.
(NixOS can't do that for you because it refuses to change a GID that identifies
the primary group of a user.) Then run

  find / -xdev -uid $oldUID -exec chown 54 {} +
  find / -xdev -gid $oldGID -exec chgrp 54 {} +

to update ownership of all files that are supposed to be owned by Apache.
2012-08-03 16:39:55 +02:00
Eelco Dolstra 29f721ba54 Only create the Apache user/group if it's "wwwrun" 2012-08-03 09:35:06 -04:00
Eelco Dolstra a559a2a606 mediawiki.nix: Use the right PHP build 2012-07-30 17:19:23 +02:00
Peter Simons e8e19bbb1f modules/services/web-servers/apache-httpd: rename 'apacheHttpd' option to 'package' 2012-07-24 01:01:48 +02:00
Peter Simons b3627f6c69 modules/services/web-servers/apache-httpd: add apache user to the apache group 2012-07-23 22:00:35 +02:00
Peter Simons 52c97adaba modules/services/web-servers/apache-httpd: make this module more configurable
- The new option 'apacheHttpd' determines the version of the Apache
   HTTP Server that's being used by this module. The default version
   is Apache 2.2.x, as before.

 - The new option 'configFile' allows users specify their own custom
   config file for the web server instead of being limited to the one
   that this module generates.
2012-07-23 21:48:21 +02:00
Marc Weber 7ddea025e4 dont hardcode apache group name when setting permissions for state dir 2012-07-23 03:28:21 +02:00
Eelco Dolstra fbf9ecf78a Apache: make /var/run/httpd readable to wwwrun, as required by mod_cgid 2012-07-09 16:27:39 +02:00
Eelco Dolstra d0c9a3ce32 Apache: build PHP against the right httpd
If httpd is built with a threaded MPM, then PHP needs to be built with
thread support as well.
2012-07-06 23:28:46 +02:00
Eelco Dolstra 18031e41bb Apache: Add an option to set the MPM
Supported values are "prefork" (default), "worker" and "event"
(experimental in Apache 2.2 but not 2.4).
2012-07-06 14:23:55 -04:00
Eelco Dolstra a07eb262a0 Apache: don't fork into the background due to Upstart weirdness
If Apache crashes during startup, Upstart for some reason shows the
job in the "start/running" state.  As a workaround, don't fork.
2012-07-06 13:47:42 -04:00
Eelco Dolstra ce3941d6e6 * Move logFormat to the per-vhost options.
svn path=/nixos/trunk/; revision=34066
2012-05-11 23:14:05 +00:00
Mathijs Kwik 8bfe513e75 renamed "all-interfaces" to "networking"
svn path=/nixos/trunk/; revision=32780
2012-03-04 18:44:42 +00:00
Mathijs Kwik 86bf5566fe many daemons: depend on all-interfaces instead of gw6c
svn path=/nixos/trunk/; revision=32766
2012-03-04 12:58:18 +00:00
Eelco Dolstra 8eba736da9 * Use the ‘path’ attribute in Upstart jobs in more places. It's a bit
more readable (also in "ps" output).

svn path=/nixos/trunk/; revision=30565
2011-11-25 16:32:54 +00:00
Eelco Dolstra 71e6f6ecdc * Start httpd after postgresql since the mediawiki subservice depends
on it.

svn path=/nixos/trunk/; revision=30161
2011-11-01 13:44:48 +00:00
Peter Simons 20b364f4de Reverting revisions 30103-30106: "always set nixpkgs.config.{state,store}Dir", etc.
After the change from revision 30103, nixos-rebuild suddenly consumed
freaky amounts of memory. I had to abort the process after it had
allocated well in excess of 30GB(!) of RAM. I'm not sure what is causing
this behavior, but undoing that assignment fixes the problem. The other
two commits needed to be revoked, too, because they depend on 30103.

svn path=/nixos/trunk/; revision=30127
2011-10-30 15:19:58 +00:00
Shea Levy 09cf6ce70c find modules | fgrep .nix | fgrep -v .svn | fgrep -v nixpkgs.nix | xargs sed -i -e 's|/nix/var|${config.nixpkgs.config.nix.stateDir}|g' -e 's|/nix/store|${config.nixpkgs.config.nix.storeDir}|g'
Don't assume /nix/store or /nix/var in NixOS modules, this is configurable

svn path=/nixos/trunk/; revision=30104
2011-10-29 21:03:57 +00:00
Eelco Dolstra 0f816374c7 * Use shm and posixsem for the SSL session cache.
svn path=/nixos/trunk/; revision=29658
2011-10-05 12:24:53 +00:00
Peter Simons eb6e1310b8 strip trailing whitespace; no functional change
svn path=/nixos/trunk/; revision=29285
2011-09-14 18:20:50 +00:00
Eelco Dolstra d75efe4aa1 * For security, don't mount the entire host filesystem.
svn path=/nixos/trunk/; revision=28429
2011-08-09 14:07:44 +00:00
Eelco Dolstra 650d14be8d * Remove most references to the "services" tree.
svn path=/nixos/trunk/; revision=26990
2011-04-27 13:16:33 +00:00
Lluís Batlle i Rossell c4dd77ae9c Make apache start when filesystems are ready.
svn path=/nixos/trunk/; revision=24544
2010-10-30 20:05:38 +00:00
Sander van der Burg 9a94e561a5 The DocumentRoot directory is now automatically created if it does not exists. This will prevent the service from working if a user forgets to create the DocumentRoot directory himself and this also makes automated testing easier.
svn path=/nixos/trunk/; revision=22929
2010-08-03 13:48:08 +00:00
Eelco Dolstra f0b647c326 * Allow the Apache submodules to declare whether they need PHP.
Don't depend on PHP unless this is the case.

svn path=/nixos/trunk/; revision=22600
2010-07-14 12:58:38 +00:00
Lluís Batlle i Rossell 41bf426a66 Making the httpd prefork basic settings configurable.
I kept the defaults as they where, to avoid surprises.
(150 httpd processes simultaneously answering? Too much for my machines)


svn path=/nixos/trunk/; revision=21220
2010-04-21 20:55:57 +00:00
Eelco Dolstra 83b76bc2cf * Option `services.apache.phpIni' (which is of type derivation)
replaced by `services.apache.phpOptions' (of type string).
* Allow Apache subservices to add to phpOptions.
* Set the TZ environment variable in Apache.
* Updated the Zabbix web interface.

svn path=/nixos/trunk/; revision=20023
2010-02-15 19:02:42 +00:00
Marc Weber fdc63c54e4 enhance phpIni documentation
readd r19267 (the issue should be fixed now)

Eelco Dolstra and Nicolas Pierron both kept asking me to pay attention
to the rendered manual. There is one catch: example settings such as
pkgs.kernelPackages_2_6_25 are correct however they don't render
properly. Moreover you don't want those examples to be evaluated (maybe
compiling a kernel ?) when building the manual only.
So use Strings and add a copy & paste note.
This is still a hacky. Maybe a kind of typed "verbatim" expression
should be added (?)

svn path=/nixos/trunk/; revision=19281
2010-01-07 09:01:40 +00:00
Eelco Dolstra ac7c404deb * Revert r19267 - it causes a corrupt Apache Upstart job to be
generated.  E.g. in
  http://hydra.nixos.org/build/208321/nixlog/8/raw:

    webserver# init:/etc/init/httpd.conf:14: Unexpected token

svn path=/nixos/trunk/; revision=19280
2010-01-06 23:37:30 +00:00
Marc Weber 99644df67a customizable PHPRC
svn path=/nixos/trunk/; revision=19267
2010-01-06 17:05:57 +00:00
Eelco Dolstra 81c3454cdb * Allow Mediawiki (and other PHP applications) to send email through
the `sendmail' command (i.e. ssmtp).  This is hacky - there should
  be some global config value that specifies the path to sendmail,
  which the ssmtp module and others can then set.

svn path=/nixos/trunk/; revision=18777
2009-12-03 08:25:16 +00:00
Eelco Dolstra d1bbe706a2 * Synced with the trunk.
svn path=/nixos/branches/upstart-0.6/; revision=18297
2009-11-08 21:27:53 +00:00
Eelco Dolstra d7342c78d4 * Support pre-stop scripts. These are needed to cleanly shutdown
daemons such as Apache or PostgreSQL.

svn path=/nixos/branches/upstart-0.6/; revision=18234
2009-11-06 22:45:19 +00:00
Eelco Dolstra 83a9bf9a6a * Change all the startOn / stopOn attributes to the Upstart 0.6 syntax
(e.g., startOn = "started foo" instead of startOn = "foo").

svn path=/nixos/branches/upstart-0.6/; revision=18230
2009-11-06 22:19:17 +00:00
Nicolas Pierron e07f1e98db * Revert 18115, 18150, 18135, 18112, 18107-18105.
Revert modifications done on apache-httpd configurations.


svn path=/nixos/trunk/; revision=18215
2009-11-06 16:23:25 +00:00
Nicolas Pierron 72f804c9b2 * Fix subversion test and change the name of the "config" option to
"configuration" because it may interfered with sub-modules keywords.

svn path=/nixos/trunk/; revision=18155
2009-11-05 19:24:02 +00:00
Nicolas Pierron 7571055ad3 * Declare options for sub-services.
* Add deprecated options for "serviceType", "serviceName", "function" and
  "config" without changing the behavior.

svn path=/nixos/trunk/; revision=18150
2009-11-05 18:21:03 +00:00
Nicolas Pierron 1952365a51 * Remove unused subservice syntax.
svn path=/nixos/trunk/; revision=18135
2009-11-05 13:34:01 +00:00
Nicolas Pierron 8734b7103e * Remove needs to call getPort to access the server port. This is made
possible by using sub-modules arguments.

svn path=/nixos/trunk/; revision=18112
2009-11-04 18:14:42 +00:00
Nicolas Pierron 063224bc84 * Convert per-server-options into a module.
svn path=/nixos/trunk/; revision=18105
2009-11-04 17:00:42 +00:00
Rob Vermaas 5103c7a872 list possible logformats for apache and added example
svn path=/nixos/trunk/; revision=17929
2009-10-22 17:37:06 +00:00