ErrorDocument 401 default

# ------------------------------------------------------------------------------
# | VectorCMS redirects                                                        |
# ------------------------------------------------------------------------------
<IfModule mod_rewrite.c>
	RewriteEngine on

	# Check for removed site
		RewriteCond  %{DOCUMENT_ROOT}/plugins/offline.php -f
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
		RewriteRule  (.*) plugins/offline.php [L]

	# Check for uninstalled CMS
		RewriteCond  %{DOCUMENT_ROOT}/app/Config/config.php !-f
		RewriteCond  %{HTTP_HOST} !^admin
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
		RewriteRule  (.*) VectorCMS/webroot/soon/$1 [L]

	# Default
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
		RewriteRule  ^$  VectorCMS/webroot/    [L]

	# Skip rewrite for these
		RewriteCond  %{REQUEST_URI} !^/?(stats|phpmyadmin|webmail)\b
		RewriteCond  %{DOCUMENT_ROOT}/app/webroot/%{REQUEST_URI} -f
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
		RewriteRule  (.*) app/webroot/$1 [L]

	# Rewrite to CMS
		RewriteCond  %{REQUEST_URI} !^/?(stats|phpmyadmin|webmail)\b
		RewriteCond  %{REQUEST_URI} !^/app/webroot
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
		RewriteRule  (.*) VectorCMS/webroot/$1 [L]
</IfModule>

# ------------------------------------------------------------------------------
# | Content transformations                                                    |
# ------------------------------------------------------------------------------

# Prevent some of the mobile network providers from modifying the content of
# your site: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.5.

<IfModule mod_headers.c>
	Header set Cache-Control "no-transform"
	<FilesMatch ".(js|css|xml|gz|html)$">
		Header append Vary: Accept-Encoding
	</FilesMatch>
</IfModule>

# ------------------------------------------------------------------------------
# | ETag removal                                                               |
# ------------------------------------------------------------------------------

# Since we're sending far-future expires headers (see below), ETags can
# be removed: http://developer.yahoo.com/performance/rules.html#etags.

# `FileETag None` is not enough for every server.
<IfModule mod_headers.c>
	Header unset ETag
</IfModule>

FileETag None

<IfModule mod_expires.c>
	ExpiresActive on
	ExpiresDefault										"access plus 1 month"

	# CSS and JS
	ExpiresByType text/css								"access plus 1 year"
	ExpiresByType application/javascript				"access plus 1 year"

	# Data interchange
	ExpiresByType application/json						"access plus 0 seconds"
	ExpiresByType application/xml						"access plus 0 seconds"
	ExpiresByType text/xml								"access plus 0 seconds"

	# Favicon (cannot be renamed!)
	ExpiresByType image/x-icon							"access plus 1 week"

	# HTML components (HTCs)
	ExpiresByType text/x-component						"access plus 1 month"

	# HTML
	ExpiresByType text/html								"access plus 0 seconds"

	# Manifest files
	ExpiresByType application/x-web-app-manifest+json	"access plus 0 seconds"
	ExpiresByType text/cache-manifest					"access plus 0 seconds"

	# Media
	ExpiresByType audio/ogg								"access plus 1 month"
	ExpiresByType image/gif								"access plus 1 month"
	ExpiresByType image/jpeg							"access plus 1 month"
	ExpiresByType image/png								"access plus 1 month"
	ExpiresByType video/mp4								"access plus 1 month"
	ExpiresByType video/ogg								"access plus 1 month"
	ExpiresByType video/webm							"access plus 1 month"

	# Web feeds
	ExpiresByType application/atom+xml					"access plus 1 hour"
	ExpiresByType application/rss+xml					"access plus 1 hour"

	# Web fonts
	ExpiresByType application/x-font-woff				"access plus 1 month"
	ExpiresByType application/font-woff					"access plus 1 month"
	ExpiresByType application/vnd.ms-fontobject			"access plus 1 month"
	ExpiresByType application/x-font-ttf				"access plus 1 month"
	ExpiresByType font/opentype							"access plus 1 month"
	ExpiresByType image/svg+xml							"access plus 1 month"

</IfModule>

# ------------------------------------------------------------------------------
# | GZIP compression                                                           |
# ------------------------------------------------------------------------------

<IfModule mod_deflate.c>

	# Compress HTML, CSS, JavaScript, Text, XML and fonts
	AddOutputFilterByType DEFLATE application/javascript
	AddOutputFilterByType DEFLATE application/rss+xml
	AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
	AddOutputFilterByType DEFLATE application/x-font
	AddOutputFilterByType DEFLATE application/x-font-opentype
	AddOutputFilterByType DEFLATE application/x-font-otf
	AddOutputFilterByType DEFLATE application/x-font-truetype
	AddOutputFilterByType DEFLATE application/x-font-ttf
	AddOutputFilterByType DEFLATE application/x-javascript
	AddOutputFilterByType DEFLATE application/xhtml+xml
	AddOutputFilterByType DEFLATE application/xml
	AddOutputFilterByType DEFLATE font/opentype
	AddOutputFilterByType DEFLATE font/otf
	AddOutputFilterByType DEFLATE font/ttf
	AddOutputFilterByType DEFLATE image/svg+xml
	AddOutputFilterByType DEFLATE image/x-icon
	AddOutputFilterByType DEFLATE text/css
	AddOutputFilterByType DEFLATE text/html
	AddOutputFilterByType DEFLATE text/javascript
	AddOutputFilterByType DEFLATE text/plain
	AddOutputFilterByType DEFLATE text/xml

	# Remove browser bugs (only needed for really old browsers)
	BrowserMatch ^Mozilla/4 gzip-only-text/html
	BrowserMatch ^Mozilla/4\.0[678] no-gzip
	BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

	<IfModule mod_headers.c>
		Header append Vary User-Agent
	</IfModule>
</IfModule>
