162 lines
4.8 KiB
Puppet
162 lines
4.8 KiB
Puppet
class apache::default_mods (
|
|
$all = true,
|
|
$mods = undef,
|
|
$apache_version = $::apache::apache_version
|
|
) {
|
|
# These are modules required to run the default configuration.
|
|
# They are not configurable at this time, so we just include
|
|
# them to make sure it works.
|
|
case $::osfamily {
|
|
'redhat', 'freebsd': {
|
|
::apache::mod { 'log_config': }
|
|
if versioncmp($apache_version, '2.4') >= 0 {
|
|
# Lets fork it
|
|
::apache::mod { 'systemd': }
|
|
::apache::mod { 'unixd': }
|
|
}
|
|
}
|
|
default: {}
|
|
}
|
|
::apache::mod { 'authz_host': }
|
|
|
|
# The rest of the modules only get loaded if we want all modules enabled
|
|
if $all {
|
|
case $::osfamily {
|
|
'debian': {
|
|
include ::apache::mod::reqtimeout
|
|
if versioncmp($apache_version, '2.4') >= 0 {
|
|
::apache::mod { 'authn_core': }
|
|
}
|
|
}
|
|
'redhat': {
|
|
include ::apache::mod::actions
|
|
include ::apache::mod::cache
|
|
include ::apache::mod::mime
|
|
include ::apache::mod::mime_magic
|
|
include ::apache::mod::vhost_alias
|
|
include ::apache::mod::suexec
|
|
include ::apache::mod::rewrite
|
|
include ::apache::mod::speling
|
|
::apache::mod { 'auth_digest': }
|
|
::apache::mod { 'authn_anon': }
|
|
::apache::mod { 'authn_dbm': }
|
|
::apache::mod { 'authz_dbm': }
|
|
::apache::mod { 'authz_owner': }
|
|
::apache::mod { 'expires': }
|
|
::apache::mod { 'ext_filter': }
|
|
::apache::mod { 'include': }
|
|
::apache::mod { 'logio': }
|
|
::apache::mod { 'substitute': }
|
|
::apache::mod { 'usertrack': }
|
|
::apache::mod { 'version': }
|
|
|
|
if versioncmp($apache_version, '2.4') >= 0 {
|
|
::apache::mod { 'authn_core': }
|
|
}
|
|
else {
|
|
::apache::mod { 'authn_alias': }
|
|
::apache::mod { 'authn_default': }
|
|
}
|
|
}
|
|
'freebsd': {
|
|
include ::apache::mod::actions
|
|
include ::apache::mod::cache
|
|
include ::apache::mod::disk_cache
|
|
include ::apache::mod::headers
|
|
include ::apache::mod::info
|
|
include ::apache::mod::mime_magic
|
|
include ::apache::mod::reqtimeout
|
|
include ::apache::mod::rewrite
|
|
include ::apache::mod::userdir
|
|
include ::apache::mod::vhost_alias
|
|
include ::apache::mod::speling
|
|
|
|
::apache::mod { 'asis': }
|
|
::apache::mod { 'auth_digest': }
|
|
::apache::mod { 'authn_alias': }
|
|
::apache::mod { 'authn_anon': }
|
|
::apache::mod { 'authn_dbm': }
|
|
::apache::mod { 'authn_default': }
|
|
::apache::mod { 'authz_dbm': }
|
|
::apache::mod { 'authz_owner': }
|
|
::apache::mod { 'cern_meta': }
|
|
::apache::mod { 'charset_lite': }
|
|
::apache::mod { 'dumpio': }
|
|
::apache::mod { 'expires': }
|
|
::apache::mod { 'file_cache': }
|
|
::apache::mod { 'filter':}
|
|
::apache::mod { 'imagemap':}
|
|
::apache::mod { 'include': }
|
|
::apache::mod { 'logio': }
|
|
::apache::mod { 'unique_id': }
|
|
::apache::mod { 'usertrack': }
|
|
::apache::mod { 'version': }
|
|
}
|
|
default: {}
|
|
}
|
|
case $::apache::mpm_module {
|
|
'prefork': {
|
|
include ::apache::mod::cgi
|
|
}
|
|
'worker': {
|
|
include ::apache::mod::cgid
|
|
}
|
|
default: {
|
|
# do nothing
|
|
}
|
|
}
|
|
include ::apache::mod::alias
|
|
include ::apache::mod::autoindex
|
|
include ::apache::mod::dav
|
|
include ::apache::mod::dav_fs
|
|
include ::apache::mod::deflate
|
|
include ::apache::mod::dir
|
|
include ::apache::mod::mime
|
|
include ::apache::mod::negotiation
|
|
include ::apache::mod::setenvif
|
|
::apache::mod { 'auth_basic': }
|
|
::apache::mod { 'authn_file': }
|
|
|
|
if versioncmp($apache_version, '2.4') >= 0 {
|
|
# authz_core is needed for 'Require' directive
|
|
::apache::mod { 'authz_core':
|
|
id => 'authz_core_module',
|
|
}
|
|
|
|
# filter is needed by mod_deflate
|
|
::apache::mod { 'filter': }
|
|
|
|
# lots of stuff seems to break without access_compat
|
|
::apache::mod { 'access_compat': }
|
|
} else {
|
|
::apache::mod { 'authz_default': }
|
|
}
|
|
|
|
::apache::mod { 'authz_groupfile': }
|
|
::apache::mod { 'authz_user': }
|
|
::apache::mod { 'env': }
|
|
} elsif $mods {
|
|
::apache::default_mods::load { $mods: }
|
|
|
|
if versioncmp($apache_version, '2.4') >= 0 {
|
|
# authz_core is needed for 'Require' directive
|
|
::apache::mod { 'authz_core':
|
|
id => 'authz_core_module',
|
|
}
|
|
|
|
# filter is needed by mod_deflate
|
|
::apache::mod { 'filter': }
|
|
}
|
|
} else {
|
|
if versioncmp($apache_version, '2.4') >= 0 {
|
|
# authz_core is needed for 'Require' directive
|
|
::apache::mod { 'authz_core':
|
|
id => 'authz_core_module',
|
|
}
|
|
|
|
# filter is needed by mod_deflate
|
|
::apache::mod { 'filter': }
|
|
}
|
|
}
|
|
}
|