Puppet Class: apache::mod::alias

Inherits:
apache::params
Defined in:
manifests/mod/alias.pp

Summary

Installs and configures `mod_alias`.

Overview

Parameters:

  • icons_options (String) (defaults to: 'Indexes MultiViews')

    Disables directory listings for the icons directory, via Apache [Options](httpd.apache.org/docs/current/mod/core.html#options) directive.

  • icons_path (Variant[Boolean, Stdlib::Absolutepath]) (defaults to: $apache::params::alias_icons_path)

    Sets the local path for an /icons/ Alias. Default depends on operating system:

    • Debian: /usr/share/apache2/icons

    • FreeBSD: /usr/local/www/apache24/icons

    • Gentoo: /var/www/icons

    • Red Hat: /var/www/icons, except on Apache 2.4, where it’s /usr/share/httpd/icons

    Set to ‘false’ to disable the alias

  • icons_prefix (String) (defaults to: $apache::params::icons_prefix)

    Change the alias for /icons/.

See Also:



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'manifests/mod/alias.pp', line 21

class apache::mod::alias (
  String $icons_options                              = 'Indexes MultiViews',
  # set icons_path to false to disable the alias
  Variant[Boolean, Stdlib::Absolutepath] $icons_path = $apache::params::alias_icons_path,
  String $icons_prefix                               = $apache::params::icons_prefix
) inherits apache::params {
  include apache
  apache::mod { 'alias': }

  # Template uses $icons_path
  $parameters = {
    'icons_prefix'  => $icons_prefix,
    'icons_path'    => $icons_path,
    'icons_options' => $icons_options,
  }

  if $icons_path {
    file { 'alias.conf':
      ensure  => file,
      path    => "${apache::mod_dir}/alias.conf",
      mode    => $apache::file_mode,
      content => epp('apache/mod/alias.conf.epp', $parameters),
      require => Exec["mkdir ${apache::mod_dir}"],
      before  => File[$apache::mod_dir],
      notify  => Class['apache::service'],
    }
  }
}