Addresses the high-volume issues from the Ahrefs audit: - Worker entrypoint 301s every request not on https://paseo.sh (www subdomain and http variants), killing the duplicate-page errors and the HTTP→HTTPS internal-link notices. - pageMeta() emits <link rel="canonical"> and og:url per route; every head() call now passes its canonical path. - /blog stops rewriting itself to /blog?drafts=false; the search param only appears when explicitly true. - Sitemap includes /blog and each post. - Trim homepage title under SERP truncation, rewrite /agents meta description under 160 chars, pad short descriptions on /privacy, /download, /cloud, /changelog, /docs. - app.paseo.sh gets <meta robots=noindex,nofollow> and a Disallow-all robots.txt so the SPA shell stops polluting the crawl with H1-missing / no-OG / low-word-count warnings.
18 lines
572 B
TypeScript
18 lines
572 B
TypeScript
const SITE_ORIGIN = "https://paseo.sh";
|
|
|
|
export function pageMeta(title: string, description: string, path: string) {
|
|
const url = `${SITE_ORIGIN}${path}`;
|
|
return {
|
|
meta: [
|
|
{ title },
|
|
{ name: "description", content: description },
|
|
{ property: "og:title", content: title },
|
|
{ property: "og:description", content: description },
|
|
{ property: "og:url", content: url },
|
|
{ name: "twitter:title", content: title },
|
|
{ name: "twitter:description", content: description },
|
|
],
|
|
links: [{ rel: "canonical", href: url }],
|
|
};
|
|
}
|