88 lines
3.6 KiB
ApacheConf
88 lines
3.6 KiB
ApacheConf
#
|
|
# Rewrite
|
|
#
|
|
<IfModule mod_rewrite.c>
|
|
RewriteEngine On
|
|
|
|
RewriteBase /
|
|
|
|
# Page
|
|
RewriteRule ^([a-z\-]+)$ index.php?page=$1 [QSA,L]
|
|
|
|
# Wishlists (My lists)
|
|
RewriteRule ^wishlists/([0-9]+)$ index.php?page=wishlists&id=$1 [QSA,L]
|
|
RewriteRule ^wishlists/([0-9]+)/add$ index.php?page=wishlists&id=$1&wish_add=true [QSA,L]
|
|
|
|
# Wishlist
|
|
RewriteRule ^wishlist/([0-9a-f]{40})$ index.php?page=wishlist&hash=$1 [QSA,L]
|
|
|
|
# Blog Post
|
|
RewriteRule ^blog/([a-z\-0-9]+)$ index.php?page=post&slug=$1 [QSA,L]
|
|
|
|
# API
|
|
RewriteRule ^api/([a-zA-Z\-0-9=]+)$ index.php?page=api&module=$1 [QSA,L]
|
|
|
|
RewriteRule ^api/statistics/([a-zA-Z0-9=]+)$ index.php?page=api&module=statistics&table=$1 [QSA,L]
|
|
RewriteRule ^api/url/([a-zA-Z0-9=]+)$ index.php?page=api&module=url&url=$1 [QSA,L]
|
|
RewriteRule ^api/wishlists/([0-9]+)$ index.php?page=api&module=wishlists&wishlist_id=$1 [QSA,L]
|
|
RewriteRule ^api/wishlists/([0-9a-f]{40})$ index.php?page=api&module=wishlists&wishlist_hash=$1 [QSA,L]
|
|
</IfModule>
|
|
|
|
##-- When caching of gzipped JS and CSS files is used, enable this setting
|
|
<IfModule mod_headers.c>
|
|
Header set Vary Accept-Encoding
|
|
</IfModule>
|
|
|
|
##-- Enable the compression for any type of content
|
|
<IfModule mod_deflate.c>
|
|
<FilesMatch "(\.js|\.css|\.html|\.htm|\.php|\.xml|\.ico|\.jpg|\.jpeg|\.png|\.gif|\.svg|\.woff|\.woff2|\.ttf|\.otf|\.eot|\.JS|\.CSS|\.HTML|\.HTM|\.PHP|\.XML|\.ICO|\.JPG|\.JPEG|\.PNG|\.GIF|\.SVG|\.WOFF|\.WOFF2|\.TTF|\.OTF|\.EOT)$">
|
|
SetOutputFilter DEFLATE
|
|
</FilesMatch>
|
|
</IfModule>
|
|
|
|
##-- Customization of HTTP request and response headers
|
|
<IfModule mod_headers.c>
|
|
<FilesMatch "(\.ico|\.jpg|\.jpeg|\.png|\.gif|\.swf|\.flv|\.svg|\.ICO|\.JPG|\.JPEG|\.PNG|\.GIF|\.SWF|\.FLV|\.SVG)$">
|
|
Header set Cache-Control "max-age=2592000, public, must-revalidate"
|
|
</FilesMatch>
|
|
<FilesMatch "(\.woff|\.woff2|\.ttf|\.otf|\.eot|\.WOFF|\.WOFF2|\.TTF|\.OTF|\.EOT)$">
|
|
Header set Cache-Control "max-age=2592000, public, must-revalidate"
|
|
</FilesMatch>
|
|
<FilesMatch "(\.css|\.js|\.CSS|\.JS)$">
|
|
Header set Cache-Control "max-age=604800, public, must-revalidate"
|
|
</FilesMatch>
|
|
<FilesMatch "(\.xml|\.txt|\.XML|\.TXT)$">
|
|
Header set Cache-Control "max-age=604800, public, must-revalidate"
|
|
</FilesMatch>
|
|
<FilesMatch "(\.html|\.htm|\.php|\.HTML|\.HTM|\.PHP)$">
|
|
Header set Cache-Control "max-age=1, private, must-revalidate"
|
|
</FilesMatch>
|
|
</IfModule>
|
|
|
|
##-- Generation of Expires and Cache-Control HTTP headers
|
|
<IfModule mod_expires.c>
|
|
ExpiresActive On
|
|
ExpiresDefault "access plus 1 seconds"
|
|
ExpiresByType image/gif "access plus 2592000 seconds"
|
|
ExpiresByType image/jpg "access plus 2592000 seconds"
|
|
ExpiresByType image/jpeg "access plus 2592000 seconds"
|
|
ExpiresByType image/png "access plus 2592000 seconds"
|
|
ExpiresByType image/svg+xml "access plus 2592000 seconds"
|
|
ExpiresByType text/html "access plus 1 seconds"
|
|
ExpiresByType text/css "access plus 604800 seconds"
|
|
ExpiresByType text/javascript "access plus 604800 seconds"
|
|
ExpiresByType application/x-javascript "access plus 604800 seconds"
|
|
ExpiresByType application/javascript "access plus 604800 seconds"
|
|
ExpiresByType text/x-component "access plus 604800 seconds"
|
|
ExpiresByType font/truetype "access plus 604800 seconds"
|
|
ExpiresByType font/opentype "access plus 604800 seconds"
|
|
ExpiresByType application/x-font-ttf "access plus 604800 seconds"
|
|
ExpiresByType application/x-font-woff "access plus 604800 seconds"
|
|
ExpiresByType application/font-woff "access plus 604800 seconds"
|
|
ExpiresByType application/vnd.ms-fontobject "access plus 604800 seconds"
|
|
ExpiresByType image/x-icon "access plus 604800 seconds"
|
|
|
|
<IfModule mod_headers.c>
|
|
Header append Cache-Control "public"
|
|
</IfModule>
|
|
</IfModule>
|