Merge pull request 'feat(seo): robots.txt + sitemap.xml — crawler-kontraktet saknades (404 mätt live)' (#89) from feat/robots-sitemap into main
masterplan-lock / check (push) Successful in 4s
Security Scan (SIAX Cloud) / security (push) Successful in 15s
CI (SIAX Cloud) / quality (push) Successful in 37s
CI (SIAX Cloud) / security (push) Successful in 39s
CI (SIAX Cloud) / integration (push) Successful in 47s
Deploy to Coolify / deploy (push) Successful in 1m27s
Release chain (G17, ADR-W16-003) / Build, push, G17 (SBOM/scan/attest/verify/evidence) (push) Successful in 1m27s

This commit was merged in pull request #89.
This commit is contained in:
2026-09-22 08:04:55 +00:00
2 changed files with 23 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
import type { MetadataRoute } from "next";
// Publik marknadsföringssajt: crawler-vänlig men utan auth-ytor.
// /portal, /admin och /order/* är inloggnings-ytor — ej indexerbara.
export default function robots(): MetadataRoute.Robots {
return {
rules: [{ userAgent: "*", allow: "/", disallow: ["/portal/", "/admin/", "/order/", "/api/"] }],
sitemap: "https://0pt.app/sitemap.xml",
};
}
+13
View File
@@ -0,0 +1,13 @@
import type { MetadataRoute } from "next";
const BASE = "https://0pt.app";
const ROUTES = ["", "/tjanster", "/katalog", "/kallor", "/bestall", "/bestall/beskriv", "/bestall/forskott"];
export default function sitemap(): MetadataRoute.Sitemap {
return ROUTES.map((r) => ({
url: `${BASE}${r}`,
lastModified: new Date(),
changeFrequency: "weekly",
priority: r === "" ? 1 : 0.7,
}));
}