wishthis/.htaccess

88 lines
3.7 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>