|
|
|
|
@ -70,11 +70,15 @@ export const handle: Handle = async ({ event, resolve }) => {
|
|
|
|
|
|
|
|
|
|
const response = await resolve(event);
|
|
|
|
|
|
|
|
|
|
// Cabeceras de seguridad básicas
|
|
|
|
|
// Cabeceras de seguridad y caché: solo para HTML
|
|
|
|
|
try {
|
|
|
|
|
response.headers.set('X-Frame-Options', 'DENY');
|
|
|
|
|
response.headers.set('Referrer-Policy', 'no-referrer');
|
|
|
|
|
response.headers.set('X-Content-Type-Options', 'nosniff');
|
|
|
|
|
const ct = response.headers.get('content-type') || '';
|
|
|
|
|
if (ct.includes('text/html')) {
|
|
|
|
|
response.headers.set('cache-control', 'no-store');
|
|
|
|
|
response.headers.set('X-Frame-Options', 'DENY');
|
|
|
|
|
response.headers.set('Referrer-Policy', 'no-referrer');
|
|
|
|
|
response.headers.set('X-Content-Type-Options', 'nosniff');
|
|
|
|
|
}
|
|
|
|
|
} catch {
|
|
|
|
|
// Ignorar si la implementación de Response no permite set()
|
|
|
|
|
}
|
|
|
|
|
|