# ************************************
# Vhost template in module puppetlabs-apache
# Managed by Puppet
# ************************************
# 
<VirtualHost *:80>
  ServerName demo-old.ofbiz.apache.org

  ## Vhost docroot
  DocumentRoot "/var/www/ofbiz/big-files"

  ## Directories, there should at least be a declaration for /var/www/ofbiz/big-files

  <Directory "/var/www/ofbiz/big-files">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Require all granted
  </Directory>

  ## Logging
  ErrorLog "/var/log/apache2/ofbiz-old_error.log"
  ServerSignature Off
  CustomLog "/var/log/apache2/demo-old.ofbiz.apache.org.http_access.log" combined 

  ## Custom fragment
  RedirectMatch permanent ^/(.*)$ https://demo-old.ofbiz.apache.org/$1

</VirtualHost>
