Repository navigation
Expand file tree
/
Copy pathvercel.json
More file actions
128 lines (128 loc) · 2.81 KB
/
Copy pathvercel.json
File metadata and controls
128 lines (128 loc) · 2.81 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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
{
"$schema": "https://openapi.vercel.sh/vercel.json",
"framework": "vite",
"buildCommand": "npm run build",
"outputDirectory": "dist",
"rewrites": [
{
"source": "/((?!api/|assets/|media/|ffmpeg/|fonts/|og/).*)",
"destination": "/index.html"
}
],
"headers": [
{
"source": "/assets/(.*)",
"headers": [
{
"key": "Cache-Control",
"value": "public, max-age=31536000, immutable"
}
]
},
{
"source": "/fonts/(.*)",
"headers": [
{
"key": "Cache-Control",
"value": "public, max-age=31536000, immutable"
}
]
},
{
"source": "/ffmpeg/(.*)",
"headers": [
{
"key": "Cache-Control",
"value": "public, max-age=31536000, immutable"
}
]
},
{
"source": "/media/(.*)",
"headers": [
{
"key": "Cache-Control",
"value": "public, max-age=2592000, stale-while-revalidate=31536000"
}
]
},
{
"source": "/og/(.*)",
"headers": [
{
"key": "Cache-Control",
"value": "public, max-age=604800, stale-while-revalidate=31536000"
}
]
},
{
"source": "/(favicon.svg|favicon.ico|icon-192.png|icon-512.png|og.png)",
"headers": [
{
"key": "Cache-Control",
"value": "public, max-age=604800, stale-while-revalidate=31536000"
}
]
},
{
"source": "/sw.js",
"headers": [
{
"key": "Cache-Control",
"value": "public, max-age=0, must-revalidate"
}
]
},
{
"source": "/(.*)",
"headers": [
{
"key": "X-Content-Type-Options",
"value": "nosniff"
},
{
"key": "Referrer-Policy",
"value": "strict-origin-when-cross-origin"
},
{
"key": "Permissions-Policy",
"value": "camera=(self), microphone=(self), display-capture=(self)"
},
{
"key": "Content-Security-Policy",
"value": "object-src 'self' blob:; frame-ancestors 'self'; upgrade-insecure-requests"
},
{
"key": "X-Frame-Options",
"value": "SAMEORIGIN"
},
{
"key": "Cross-Origin-Opener-Policy",
"value": "same-origin-allow-popups"
}
]
},
{
"source": "/blog/rss.xml",
"headers": [
{
"key": "Content-Type",
"value": "application/xml; charset=utf-8"
},
{
"key": "X-Content-Type-Options",
"value": "nosniff"
}
]
},
{
"source": "/rss.xsl",
"headers": [
{
"key": "Content-Type",
"value": "text/xsl; charset=utf-8"
}
]
}
]
}