522 lines
12 KiB
TOML
522 lines
12 KiB
TOML
# Main site configuration
|
|
[build]
|
|
publish = "dist"
|
|
command = "npm run build"
|
|
|
|
# Rewrite rules for subdomain routing (preserves subdomain in location bar)
|
|
# Note: These require domain aliases to be configured in Netlify dashboard
|
|
|
|
# Static asset rewrites for all subdomains
|
|
[[redirects]]
|
|
from = "https://art.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://art.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for bfs subdomain
|
|
[[redirects]]
|
|
from = "https://bfs.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://bfs.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for dfs subdomain
|
|
[[redirects]]
|
|
from = "https://dfs.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://dfs.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for problems subdomain
|
|
[[redirects]]
|
|
from = "https://problems.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://problems.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for puzzles subdomain
|
|
[[redirects]]
|
|
from = "https://puzzles.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://puzzles.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for reviews subdomain
|
|
[[redirects]]
|
|
from = "https://reviews.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://reviews.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for reflections subdomain
|
|
[[redirects]]
|
|
from = "https://reflections.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://reflections.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for vibes subdomain
|
|
[[redirects]]
|
|
from = "https://vibes.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://vibes.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for workflows subdomain
|
|
[[redirects]]
|
|
from = "https://workflows.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://workflows.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for magic subdomain
|
|
[[redirects]]
|
|
from = "https://magic.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://magic.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for contests subdomain
|
|
[[redirects]]
|
|
from = "https://contests.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://contests.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for poetry subdomain
|
|
[[redirects]]
|
|
from = "https://poetry.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://poetry.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Asset rewrites for blog subdomain
|
|
[[redirects]]
|
|
from = "https://blog.neeldhara.blog/_astro/*"
|
|
to = "/_astro/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://blog.neeldhara.blog/assets/*"
|
|
to = "/assets/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages
|
|
[[redirects]]
|
|
from = "https://art.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://art.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue (e.g. /art/art/slug → /art/slug)
|
|
[[redirects]]
|
|
from = "https://art.neeldhara.blog/art/*"
|
|
to = "https://art.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
# Content rewrites
|
|
[[redirects]]
|
|
from = "https://art.neeldhara.blog/*"
|
|
to = "/art/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - BFS
|
|
[[redirects]]
|
|
from = "https://bfs.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://bfs.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for BFS
|
|
[[redirects]]
|
|
from = "https://bfs.neeldhara.blog/bfs/*"
|
|
to = "https://bfs.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://bfs.neeldhara.blog/*"
|
|
to = "/bfs/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - DFS
|
|
[[redirects]]
|
|
from = "https://dfs.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://dfs.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for DFS
|
|
[[redirects]]
|
|
from = "https://dfs.neeldhara.blog/dfs/*"
|
|
to = "https://dfs.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://dfs.neeldhara.blog/*"
|
|
to = "/dfs/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - PROBLEMS
|
|
[[redirects]]
|
|
from = "https://problems.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://problems.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for PROBLEMS
|
|
[[redirects]]
|
|
from = "https://problems.neeldhara.blog/problems/*"
|
|
to = "https://problems.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://problems.neeldhara.blog/*"
|
|
to = "/problems/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - PUZZLES
|
|
[[redirects]]
|
|
from = "https://puzzles.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://puzzles.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for PUZZLES
|
|
[[redirects]]
|
|
from = "https://puzzles.neeldhara.blog/puzzles/*"
|
|
to = "https://puzzles.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://puzzles.neeldhara.blog/*"
|
|
to = "/puzzles/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - REVIEWS
|
|
[[redirects]]
|
|
from = "https://reviews.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://reviews.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for REVIEWS
|
|
[[redirects]]
|
|
from = "https://reviews.neeldhara.blog/reviews/*"
|
|
to = "https://reviews.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://reviews.neeldhara.blog/*"
|
|
to = "/reviews/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - REFLECTIONS
|
|
[[redirects]]
|
|
from = "https://reflections.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://reflections.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for REFLECTIONS
|
|
[[redirects]]
|
|
from = "https://reflections.neeldhara.blog/reflections/*"
|
|
to = "https://reflections.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://reflections.neeldhara.blog/*"
|
|
to = "/reflections/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - VIBES
|
|
[[redirects]]
|
|
from = "https://vibes.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://vibes.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for VIBES
|
|
[[redirects]]
|
|
from = "https://vibes.neeldhara.blog/vibes/*"
|
|
to = "https://vibes.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://vibes.neeldhara.blog/*"
|
|
to = "/vibes/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - WORKFLOWS
|
|
[[redirects]]
|
|
from = "https://workflows.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://workflows.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for WORKFLOWS
|
|
[[redirects]]
|
|
from = "https://workflows.neeldhara.blog/workflows/*"
|
|
to = "https://workflows.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://workflows.neeldhara.blog/*"
|
|
to = "/workflows/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - MAGIC
|
|
[[redirects]]
|
|
from = "https://magic.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://magic.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for MAGIC
|
|
[[redirects]]
|
|
from = "https://magic.neeldhara.blog/magic/*"
|
|
to = "https://magic.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://magic.neeldhara.blog/*"
|
|
to = "/magic/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - CONTESTS
|
|
[[redirects]]
|
|
from = "https://contests.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://contests.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for CONTESTS
|
|
[[redirects]]
|
|
from = "https://contests.neeldhara.blog/contests/*"
|
|
to = "https://contests.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://contests.neeldhara.blog/*"
|
|
to = "/contests/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - POETRY
|
|
[[redirects]]
|
|
from = "https://poetry.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://poetry.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for POETRY
|
|
[[redirects]]
|
|
from = "https://poetry.neeldhara.blog/poetry/*"
|
|
to = "https://poetry.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://poetry.neeldhara.blog/*"
|
|
to = "/poetry/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Special redirects for global pages - BLOG
|
|
[[redirects]]
|
|
from = "https://blog.neeldhara.blog/latest"
|
|
to = "https://neeldhara.blog/latest"
|
|
status = 301
|
|
force = true
|
|
|
|
[[redirects]]
|
|
from = "https://blog.neeldhara.blog/about"
|
|
to = "https://neeldhara.blog/about"
|
|
status = 301
|
|
force = true
|
|
|
|
# Fix double-path issue for BLOG
|
|
[[redirects]]
|
|
from = "https://blog.neeldhara.blog/blog/*"
|
|
to = "https://blog.neeldhara.blog/:splat"
|
|
status = 301
|
|
force = true
|
|
|
|
# Main blog redirect
|
|
[[redirects]]
|
|
from = "https://blog.neeldhara.blog/*"
|
|
to = "/blog/:splat"
|
|
status = 200
|
|
force = true
|
|
|
|
# Fallback for main domain
|
|
[[redirects]]
|
|
from = "/*"
|
|
to = "/index.html"
|
|
status = 200
|