- Corrected sizing of LyricSearchInputField - Removed sitemap from auto-generated robots.txt
20 lines
597 B
JavaScript
20 lines
597 B
JavaScript
import { defineMiddleware } from 'astro:middleware';
|
|
|
|
export const onRequest = defineMiddleware(async (context, next) => {
|
|
try {
|
|
// Let Astro handle the request first
|
|
const response = await next();
|
|
|
|
// If it's a 404, redirect to home
|
|
if (response.status === 404) {
|
|
console.log(`404 redirect: ${context.url.pathname} -> /`);
|
|
return context.redirect('/', 302);
|
|
}
|
|
|
|
return response;
|
|
} catch (error) {
|
|
// Handle any middleware errors by redirecting to home
|
|
console.error('Middleware error:', error);
|
|
return context.redirect('/', 302);
|
|
}
|
|
}); |