
vercel.json
JSON49 lines1.8 KB
1{2 "$schema": "https://openapi.vercel.sh/vercel.json",3 "framework": null,4 "buildCommand": "bash vercel-build.sh",5 "outputDirectory": "_site",6 "cleanUrls": false,7 "trailingSlash": false,8 "headers": [9 {10 "source": "/(.*)",11 "headers": [12 { "key": "X-Content-Type-Options", "value": "nosniff" },13 { "key": "Referrer-Policy", "value": "strict-origin-when-cross-origin" },14 { "key": "X-Frame-Options", "value": "DENY" },15 { "key": "Permissions-Policy", "value": "camera=(), microphone=(), geolocation=(), payment=(), usb=()" },16 { "key": "Strict-Transport-Security", "value": "max-age=63072000; includeSubDomains; preload" },17 {18 "key": "Content-Security-Policy",19 "value": "default-src 'self'; script-src 'self' 'sha256-aJ0LYMKNqE5UuKHYusxXJ51gCfdbdI7fAUHJ6cBuSUA=' https://cdn.jsdelivr.net; style-src 'self' 'unsafe-inline'; img-src 'self' data: https://www.plantuml.com; font-src 'self' data: https://cdn.jsdelivr.net; connect-src 'self' https://cdn.jsdelivr.net; frame-src 'none'; object-src 'none'; base-uri 'self'; form-action 'self'; frame-ancestors 'none'; upgrade-insecure-requests"20 }21 ]22 },23 {24 "source": "/_assets/(.*)",25 "headers": [26 { "key": "Cache-Control", "value": "public, max-age=3600, stale-while-revalidate=86400" }27 ]28 },29 {30 "source": "/public/(.*)",31 "headers": [32 { "key": "Cache-Control", "value": "public, max-age=3600, stale-while-revalidate=86400" }33 ]34 },35 {36 "source": "/images/(.*)",37 "headers": [38 { "key": "Cache-Control", "value": "public, max-age=86400, stale-while-revalidate=604800" }39 ]40 },41 {42 "source": "/(index\\.json|xrefmap\\.yml|sitemap\\.xml|manifest\\.json)",43 "headers": [44 { "key": "Cache-Control", "value": "public, max-age=0, must-revalidate" }45 ]46 }47 ]48}49