RewriteEngine On # Turn on the rewriting engine
RewriteRule ^messages/?$ messages/index.php?f=list&%{QUERY_STRING} [NC,L]
RewriteRule ^messages/texts?$ messages/index.php?f=texts&%{QUERY_STRING} [NC,L]
RewriteRule ^messages/([0-9]+)/?$ messages/index.php?f=detail&id=$1&%{QUERY_STRING} [NC,L]
RewriteRule ^messages/last_update/([0-9]+)/?$ messages/index.php?id=$1&f=last_update&%{QUERY_STRING} [NC,L]
RewriteRule ^messages/date/?$ messages/index.php?date=$1&f=query_by_date&%{QUERY_STRING} [NC,L]
RewriteRule ^login/?$ login/index.php [NC,L]

# 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 application/x-httpd-php
AddOutputFilterByType DEFLATE application/json
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
Header append Vary User-Agent

<IfModule mod_headers.c>
    Header always set Access-Control-Allow-Origin "*"
    Header always set Access-Control-Allow-Headers "Content-Type, Authorization"
    Header always set Access-Control-Allow-Methods "GET,PUT,POST,DELETE,OPTIONS"
    Header always set Access-Control-Allow-Credentials true
</IfModule>