ServerName www.alwisp.net ServerAlias alwisp.net ServerAdmin webmaster@alwisp.net DocumentRoot /var/www/html Options -Indexes +FollowSymLinks AllowOverride All Require all granted # Security headers Header always set X-Frame-Options "SAMEORIGIN" Header always set X-Content-Type-Options "nosniff" Header always set X-XSS-Protection "1; mode=block" Header always set Referrer-Policy "strict-origin-when-cross-origin" # Compression AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript application/json # Cache static assets ExpiresActive On ExpiresByType image/jpeg "access plus 1 month" ExpiresByType image/png "access plus 1 month" ExpiresByType image/webp "access plus 1 month" ExpiresByType image/svg+xml "access plus 1 month" ExpiresByType text/css "access plus 1 week" ExpiresByType application/javascript "access plus 1 week" ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined # Subdomain: jumpers.stormcloudhills.com -> /uploads/scj # HTTP: redirect everything to HTTPS ServerName jumpers.stormcloudhills.com ServerAdmin webmaster@alwisp.net RewriteEngine On RewriteRule ^/?(.*)$ https://jumpers.stormcloudhills.com/$1 [R=301,L] ErrorLog ${APACHE_LOG_DIR}/jumpers-error.log CustomLog ${APACHE_LOG_DIR}/jumpers-access.log combined # HTTPS ServerName jumpers.stormcloudhills.com ServerAdmin webmaster@alwisp.net DocumentRoot /var/www/html/uploads/scj DirectoryIndex index.html SSLEngine on SSLCertificateFile /etc/apache2/ssl/jumpers.stormcloudhills.com.crt SSLCertificateKeyFile /etc/apache2/ssl/jumpers.stormcloudhills.com.key # If your provider gives a separate CA chain/bundle, uncomment: #SSLCertificateChainFile /etc/apache2/ssl/jumpers.stormcloudhills.com.chain.crt Options -Indexes +FollowSymLinks AllowOverride All Require all granted # Security headers Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" Header always set X-Frame-Options "SAMEORIGIN" Header always set X-Content-Type-Options "nosniff" Header always set X-XSS-Protection "1; mode=block" Header always set Referrer-Policy "strict-origin-when-cross-origin" # Compression AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript application/json # Cache static assets ExpiresActive On ExpiresByType image/jpeg "access plus 1 month" ExpiresByType image/png "access plus 1 month" ExpiresByType image/webp "access plus 1 month" ExpiresByType image/svg+xml "access plus 1 month" ExpiresByType text/css "access plus 1 week" ExpiresByType application/javascript "access plus 1 week" ErrorLog ${APACHE_LOG_DIR}/jumpers-ssl-error.log CustomLog ${APACHE_LOG_DIR}/jumpers-ssl-access.log combined