Problem
/sitemap.xmlworks correctly in local development- After deploying to Vercel,
/sitemap.xmlreturns > 404 - No obvious errors in the UI
Expected Behavior
/sitemap.xmlshould be accessible in production and return a valid sitemap
Code & Setup
File location
app/sitemap.ts
Implementation
import { getBayaanSlug } from '@/services/bayaans/bayaan.service';import type { MetadataRoute } from 'next';
export default async function sitemap(): Promise<MetadataRoute.Sitemap> { const domain = process.env.NEXT_PUBLIC_SITE_URL;
const audioList = await getBayaanSlug();
const audioSitemap: MetadataRoute.Sitemap = audioList?.items?.map((audio: any) => ({ url: `${domain}/audio/${audio?.slug}`, lastModified: audio?.sys?.publishedAt, changeFrequency: 'yearly', priority: 0.8, }));
return [ { url: domain || "", lastModified: new Date(), changeFrequency: 'monthly', priority: 1, }, ...(audioSitemap || []), ];}Steps to Reproduce
- Run project locally →
/sitemap.xmlworks - Deploy to Vercel
- Visit
/sitemap.xml→ returns404
Additional Context
- Removing dynamic data and returning a static sitemap works

