LogFormat "/var/www/%v/logs/access_[% variable.host %].%{%F%t}t%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %D" vhost
LogFormat "/var/log/apache2/redirects/access_%v.%{%Y-%m%t}t%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %D" redirect
CustomLog '|/usr/local/sbin/vhost-logger -missed-lines-to-stderr -strip .vhost.noris.net' vhost env=!IS_REDIRECT
CustomLog '|/usr/local/sbin/vhost-logger -missed-lines-to-stderr -strip .vhost.noris.net' redirect env=IS_REDIRECT

### "echte" VirtualHosts ###

[%  FOREACH virtualhost IN virtualhosts -%]
# VirtualHost: [% virtualhost.key %]
<VirtualHost *>
  ServerName [% virtualhost.key %].vhost.noris.net
[%
        IF virtualhost.value.domains;
            domains = [];
            domains.push("${virtualhost.key}.${variable.host}.noris.net")
              IF variable.host.defined;
            FOREACH domain IN virtualhost.value.domains;
                domains.push("www.$domain");
            END
-%]
  ServerAlias [% domains.merge(virtualhost.value.domains).unique.sort.join %]
[%      END -%]
  ServerAdmin [% virtualhost.value.email or 'support@noris.net' %]
  SuexecUserGroup [% virtualhost.key %] vhost-users
  suPHP_UserGroup [% virtualhost.key %] vhost-users
  DocumentRoot /var/www/[% virtualhost.key %]/htdocs
  <Directory /var/www/[% virtualhost.key %]/htdocs>
    Options Indexes FollowSymLinks Includes
    Order allow,deny
    allow from all
  </Directory>
  <Directory /var/www/[% virtualhost.key %]/htdocs/stats>
    Options Indexes
    AllowOverride None
    RewriteEngine off
    Order allow,deny
    Allow from all
    AuthUserFile /etc/passwd
    AuthName Statistiken
    AuthType Basic
    <Limit GET>
      require user [% virtualhost.key %]
    </Limit>  
  </Directory>
  ScriptAlias /cgi-bin/ /var/www/[% virtualhost.key %]/cgi-bin/
  <Directory /var/www/[% virtualhost.key %]/cgi-bin/>
    Options ExecCGI +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
  </Directory>
  ErrorLog /var/www/[% virtualhost.key %]/logs/error_log
</VirtualHost>

[%  END %]
### Redirects ###

[%  FOREACH redirect IN redirects -%]
# Redirect: [% redirect.key %]
<VirtualHost *>
  ServerName [% redirect.key %].vhost.noris.net
[%
        IF redirect.value.domains;
            domains = [];
            domains.push("${redirect.key}.${variable.host}.noris.net")
              IF variable.host.defined;
            FOREACH domain IN redirect.value.domains;
                domains.push("www.$domain");
            END
-%]
  ServerAlias [% domains.merge(redirect.value.domains).unique.sort.join %]
[%      END -%]
  ServerAdmin [% redirect.value.email or 'support@noris.net' %]
[%
    target = redirect.value.redirect.replace('\*\z','');
    IF target != redirect.value.redirect -%]
  Redirect / [% target %]
[%
        ELSE;
            target = target.replace('\\\\','\\\\');
            target = target.replace('&','\\&');
            target = target.replace('\$','\\$')
-%]
  RedirectMatch . [% target %]
[%      END -%]
  SetEnvIf Request_Method . IS_REDIRECT
</VirtualHost>

[%  END -%]
