Files
harheimertc/server/routes/robots.txt.js
Torsten Schulz (local) 7c93966878
All checks were successful
Code Analysis and Production Deploy / analyze (push) Successful in 7m44s
Code Analysis and Production Deploy / deploy-production (push) Has been skipped
Code Analysis and Production Deploy / deploy-test (push) Successful in 2m15s
feat: add robots.txt and sitemap.xml routes for SEO optimization
- Implemented a new route for robots.txt to control crawler access.
- Added a sitemap.xml route to provide search engines with a list of site URLs.
- Included functions for URL normalization and XML escaping to ensure proper formatting.
2026-05-31 13:36:49 +02:00

31 lines
851 B
JavaScript

function normalizeBaseUrl(value) {
const raw = String(value || '').trim()
if (!raw) return ''
return raw.replace(/\/+$/, '')
}
export default defineEventHandler((event) => {
const runtimeConfig = useRuntimeConfig(event)
const requestUrl = getRequestURL(event)
const baseUrl = normalizeBaseUrl(runtimeConfig.public?.baseUrl) || `${requestUrl.protocol}//${requestUrl.host}`
const lines = [
'User-agent: *',
'Allow: /',
'Disallow: /cms',
'Disallow: /cms/',
'Disallow: /mitgliederbereich',
'Disallow: /mitgliederbereich/',
'Disallow: /api/',
'Disallow: /login',
'Disallow: /registrieren',
'Disallow: /passwort-vergessen',
'Disallow: /konto-loeschen',
`Sitemap: ${baseUrl}/sitemap.xml`
]
setHeader(event, 'Content-Type', 'text/plain; charset=utf-8')
return `${lines.join('\n')}\n`
})