107 lines
No EOL
4.1 KiB
ApacheConf
Executable file
107 lines
No EOL
4.1 KiB
ApacheConf
Executable file
ErrorDocument 404 /404.html
|
|
SetEnv TZ Europe/Amsterdam
|
|
Header set Strict-Transport-Security "max-age=31536000" env=HTTPS
|
|
Options All -Indexes
|
|
|
|
|
|
<IfModule mod_rewrite.c>
|
|
Options +FollowSymLinks -MultiViews
|
|
|
|
RewriteEngine On
|
|
RewriteBase /
|
|
|
|
#www to non
|
|
RewriteCond %{HTTP_HOST} ^www\.(([a-z0-9_]+\.)?domain\.com)$ [NC]
|
|
RewriteRule ^(.+?)/?$ http://%1/$1/ [R=301,L]
|
|
|
|
RewriteCond %{THE_REQUEST} \s/+(.+?)\.html/?[\s?] [NC]
|
|
RewriteRule ^ /%1/ [R=301,NE,L]
|
|
|
|
#index redirect
|
|
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
|
|
RewriteRule ^index\.html$ http://%{HTTP_HOST}/ [R=301,L]
|
|
|
|
# add a trailing slash to non files
|
|
RewriteCond %{ENV:REDIRECT_STATUS} ^$
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
RewriteRule ^(.*?[^/])$ %{REQUEST_URI}/ [L,R=301,NE]
|
|
|
|
# add html internally
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
RewriteCond %{REQUEST_FILENAME} !-d
|
|
RewriteRule ^([^.]+)/$ $1.html [L]
|
|
|
|
</IfModule>
|
|
|
|
<IfModule mod_expires.c>
|
|
|
|
ExpiresActive on
|
|
ExpiresDefault "access plus 1 month"
|
|
# CSS
|
|
ExpiresByType text/css "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
|
|
ExpiresByType image/x-icon "access plus 1 week"
|
|
|
|
# HTML components
|
|
ExpiresByType text/x-component "access plus 1 month"
|
|
|
|
# HTML
|
|
ExpiresByType text/html "access plus 0 seconds"
|
|
|
|
# JavaScript
|
|
ExpiresByType application/javascript "access plus 1 year"
|
|
|
|
# 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/font-woff2 "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>
|
|
|
|
<IfModule mod_deflate.c>
|
|
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
|
|
</IfModule> |