Puppet Class: apache::mod::geoip

Defined in:
manifests/mod/geoip.pp

Summary

Installs and configures `mod_geoip`.

Overview

Parameters:

  • enable (Any) (defaults to: false)

    Toggles whether to enable geoip.

  • db_file (Any) (defaults to: '/usr/share/GeoIP/GeoIP.dat')

    Path to database for GeoIP to use.

  • flag (Any) (defaults to: 'Standard')

    Caching directive to use. Values: ‘CheckCache’, ‘IndexCache’, ‘MemoryCache’, ‘Standard’.

  • output (Any) (defaults to: 'All')

    Output variable locations. Values: ‘All’, ‘Env’, ‘Request’, ‘Notes’.

  • enable_utf8 (Any) (defaults to: undef)

    Changes the output from ISO88591 (Latin1) to UTF8.

  • scan_proxy_headers (Any) (defaults to: undef)

    Enables the GeoIPScanProxyHeaders option.

  • scan_proxy_headers_field

    Specifies the header mod_geoip uses to determine the client’s IP address.

  • use_last_xforwarededfor_ip (Any) (defaults to: undef)

    Determines whether to use the first or last IP address for the client’s IP in a comma-separated list of IP addresses is found.

  • scan_proxy_header_field (Any) (defaults to: undef)

See Also:



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'manifests/mod/geoip.pp', line 30

class apache::mod::geoip (
  $enable                     = false,
  $db_file                    = '/usr/share/GeoIP/GeoIP.dat',
  $flag                       = 'Standard',
  $output                     = 'All',
  $enable_utf8                = undef,
  $scan_proxy_headers         = undef,
  $scan_proxy_header_field    = undef,
  $use_last_xforwarededfor_ip = undef,
) {
  include ::apache
  ::apache::mod { 'geoip': }

  # Template uses:
  # - enable
  # - db_file
  # - flag
  # - output
  # - enable_utf8
  # - scan_proxy_headers
  # - scan_proxy_header_field
  # - use_last_xforwarededfor_ip
  file { 'geoip.conf':
    ensure  => file,
    path    => "${::apache::mod_dir}/geoip.conf",
    mode    => $::apache::file_mode,
    content => template('apache/mod/geoip.conf.erb'),
    require => Exec["mkdir ${::apache::mod_dir}"],
    before  => File[$::apache::mod_dir],
    notify  => Class['apache::service'],
  }

}