-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstaticwebapp.config.json
More file actions
70 lines (70 loc) · 2.46 KB
/
staticwebapp.config.json
File metadata and controls
70 lines (70 loc) · 2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{
"navigationFallback": {
"rewrite": "/index.html",
"exclude": [
"/images/*",
"/css/*",
"/assets/*",
"/*.{ico,png,jpg,gif,svg,js,css,woff,woff2,xml,txt}"
]
},
"routes": [
{
"route": "/rss.xml",
"headers": {
"Content-Type": "application/xml",
"cache-control": "public, max-age=3600"
}
},
{
"route": "/api/*",
"methods": ["GET", "POST", "PUT", "DELETE"],
"allowedRoles": ["anonymous"]
},
{
"route": "/assets/*",
"headers": {
"cache-control": "public, max-age=31536000, immutable"
}
},
{
"route": "/index.html",
"headers": {
"cache-control": "no-cache, no-store, must-revalidate",
"pragma": "no-cache",
"expires": "0"
}
},
{
"route": "/*.{js,css}",
"headers": {
"cache-control": "public, max-age=31536000, immutable"
}
}
],
"responseOverrides": {
"404": {
"rewrite": "/index.html",
"statusCode": 200
}
},
"mimeTypes": {
".json": "text/json",
".xml": "application/xml",
".svg": "image/svg+xml",
".js": "application/javascript",
".css": "text/css"
},
"globalHeaders": {
"Cache-Control": "no-cache",
"X-Content-Type-Options": "nosniff",
"X-Frame-Options": "DENY",
"X-XSS-Protection": "1; mode=block",
"Content-Security-Policy": "default-src 'self'; connect-src 'self' https://markhazleton.com https://*.markhazleton.com https://cdnjs.cloudflare.com https://v2.jokeapi.dev https://api.openweathermap.org wss://webspark.markhazleton.com ws://localhost:* http://localhost:* https://cloudflareinsights.com https://stats.g.doubleclick.net https://www.google.com; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://static.cloudflareinsights.com; style-src 'self' 'unsafe-inline' https://cdnjs.cloudflare.com; img-src 'self' data: https: http: blob:; font-src 'self' data: https:; media-src 'self' https: http:; frame-src 'self' https://www.youtube.com https://www.youtube-nocookie.com; worker-src 'self' blob:;",
"_CSP_WARNING": "DO NOT TIGHTEN THIS CSP! Site fetches all images/data from markhazleton.com. See .github/copilot-instructions.md @csp rule before changing.",
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, OPTIONS",
"Access-Control-Allow-Headers": "Content-Type, Authorization, Accept, Origin, X-Requested-With"
},
"trailingSlash": "never"
}