Update all non-major dependencies
[ProtonMail-WebClient.git] / applications / account / src / .htaccess
blobe76fea02919bc511e04cd9910613a9097e3ca749
1 RewriteEngine On
3 # Redirect to https if not coming from https && not forwarded from https && not curl nor any health check user-agent
4 RewriteCond %{HTTPS} !=on
5 RewriteCond %{HTTP:X-Forwarded-Proto} !=https
6 RewriteCond %{HTTP_USER_AGENT} !(^kube-probe|^GoogleHC|^curl)
7 RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
9 RewriteOptions AllowNoSlash
10 DirectorySlash Off
12 # Ignore any requests to the assets folder, to avoid the index.html fallback and return 404 there
13 RewriteRule ^assets/ - [L]
15 RewriteRule ^(.*)/$ /$1 [L,R=301]
17 # Easy switch
18 RewriteRule ^oauth/callback /oauth.html [L]
19 # Signed in app
20 RewriteRule ^u/ /private.html [L]
22 RewriteCond %{REQUEST_FILENAME} -d
23 RewriteRule (.*) $1/index.html [L]
25 RewriteCond %{REQUEST_FILENAME} !-f
26 RewriteRule (.*) /index.html [L]
28 ErrorDocument 404 /assets/404.html
30 <Files ~ "(\.html|version.json)">
31     FileETag None
32     Header unset ETag
33     Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
34     Header set Pragma "no-cache"
35     Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
36 </Files>
38 <Files ~ "\.(ttf|otf|eot|woff|woff2)$">
39     # Take out the subdomain part (proton.me) of for example
40     # Origin: https://account-api.proton.me
41     # Host: account.proton.me
42     SetEnvIf Origin "^[^.]+\.(.*)$" origin=$0 origin_domain=$1
43     SetEnvIf Host "^[^.]+\.(.*)$" server_name_domain=$1
44     # Compare the subdomain variables
45     SetEnvIfExpr "reqenv('origin_domain') == reqenv('server_name_domain')" match=true
46     Header set Access-Control-Allow-Origin "%{origin}e" env=match
47 </Files>
49 <IfModule mod_deflate.c>
50   AddOutputFilter INCLUDES;DEFLATE svg
51 </IfModule>