class websites::www { include websites::base $vhost = "www.${::domain}" $vhostdir = "$websites::base::webdatadir/${vhost}" $git_location = "git://git.${::domain}/web/www" include apache::var include apache::mod::php # for mailman reverse proxy, on ssl include apache::mod::proxy include apache::mod::ssl git::snapshot { $vhostdir: source => $git_location, } file { "${vhostdir}/var/tmp/cache": ensure => directory, group => $apache::var::apache_group, mode => '0660', require => Git::Snapshot[$vhostdir], } file { "${vhostdir}/_nav/var/tmp/cache": ensure => directory, group => $apache::var::apache_group, mode => '0660', require => Git::Snapshot[$vhostdir], } apache::vhost::base { $vhost}: content => template('websites/vhost_www.conf', 'websites/vhost_www_rewrite.conf'), location => $vhostdir, options => ['FollowSymLinks'], } apache::vhost::base { "ssl_${vhost}": use_ssl => true, vhost => $vhost, content => template('websites/vhost_www.conf', 'websites/vhost_www_rewrite.conf'), location => $vhostdir, options => ['FollowSymLinks'], } apache::vhost_redirect { ${::domain}: url => "http://www.${::domain}/", } apache::vhost_redirect { "ssl_${::domain}": use_ssl => true, vhost => ${::domain}, url => "https://www.${::domain}/", } package { ['php-mbstring', 'php-mcrypt', 'php-gettext', 'php-geoip']: } }