#################################################################################################
# ProcessWire ProCache recommended .htaccess tweaks for expires and gzip performance settings.
# PWPC-3.0 Keep this line here for ProCache identification purposes.
#################################################################################################
Header set Connection keep-alive
Header unset ETag
Header set Access-Control-Allow-Origin "*"
FileETag None
ExpiresActive On
ExpiresDefault "access plus 1 month"
# html
ExpiresByType text/html "access plus 1 hour"
# images
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
ExpiresByType image/bmp "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
# css and js
ExpiresByType text/css "access plus 1 year"
ExpiresByType text/javascript "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType application/x-javascript "access plus 1 year"
# downloads
ExpiresByType application/octet-stream "access plus 1 year"
# feeds
ExpiresByType application/json "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType text/xml "access plus 0 seconds"
# icon / favicon
ExpiresByType image/vnd.microsoft.icon "access plus 1 year"
ExpiresByType image/x-icon "access plus 1 year"
# font
ExpiresByType application/x-font-ttf "access plus 1 year"
ExpiresByType application/x-font-woff "access plus 1 year"
ExpiresByType application/font-woff "access plus 1 year"
ExpiresByType application/font-woff2 "access plus 1 year"
ExpiresByType font/woff "access plus 1 year"
ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
ExpiresByType font/eot "access plus 1 year"
ExpiresByType font/opentype "access plus 1 year"
# audio/video
ExpiresByType audio/ogg "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"
# Force compression for mangled `Accept-Encoding` request headers
# https://developer.yahoo.com/blogs/ydn/pushing-beyond-gzipping-25601.html
SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
# # Apache 2.3.7 and above may need to uncomment this line
AddOutputFilterByType DEFLATE "text/html"
AddOutputFilterByType DEFLATE "text/plain"
AddOutputFilterByType DEFLATE "text/css"
AddOutputFilterByType DEFLATE "text/javascript"
AddOutputFilterByType DEFLATE "application/javascript"
AddOutputFilterByType DEFLATE "application/x-javascript"
AddOutputFilterByType DEFLATE "application/json"
AddOutputFilterByType DEFLATE "application/xml"
AddOutputFilterByType DEFLATE "text/xml"
# # Apache 2.3.7 and above may need to uncomment this line
# End ProcessWire ProCache recommended tweaks
#################################################################################################