commit 1d06ab0749a439e09877028235a84e8b512c1ea8
parent 40f185e29994b6311cc048a15e8f9ebc805fe68d
Author: Damian Myrda <damian@prime8.dev>
Date: Sun, 8 Feb 2026 14:11:03 -0600
fix(seo): update site URL to www.prime8.dev and fix sitemap bugs
- Change SITE_DOMAIN from prime8.dev to www.prime8.dev
- Import SITE_URL in sitemap.xml.ts to fix undefined URL variable
- Import SITE_URL in blog/[slug].astro instead of hardcoded URL
- Convert astro.config.mjs to astro.config.ts and import SITE_URL
- Add trailingSlash: 'never' config to prevent duplicate content
Diffstat:
5 files changed, 23 insertions(+), 19 deletions(-)
diff --git a/astro.config.mjs b/astro.config.mjs
@@ -1,16 +0,0 @@
-import { defineConfig } from "astro/config";
-import bun from "astro-bun-adapter";
-
-export default defineConfig({
- output: "server",
- site: "https://prime8.dev",
- adapter: bun(),
- server: {
- host: true,
- },
- image: {
- service: {
- entrypoint: "astro/assets/services/noop",
- },
- },
-});
diff --git a/astro.config.ts b/astro.config.ts
@@ -0,0 +1,18 @@
+import { defineConfig } from "astro/config";
+import bun from "astro-bun-adapter";
+import { SITE_URL } from "./src/constants/website";
+
+export default defineConfig({
+ output: "server",
+ site: SITE_URL,
+ trailingSlash: "never",
+ adapter: bun(),
+ server: {
+ host: true,
+ },
+ image: {
+ service: {
+ entrypoint: "astro/assets/services/noop",
+ },
+ },
+});
diff --git a/src/constants/website.ts b/src/constants/website.ts
@@ -1,3 +1,3 @@
-export const SITE_DOMAIN = "prime8.dev";
+export const SITE_DOMAIN = "www.prime8.dev";
export const SITE_URL = `https://${SITE_DOMAIN}`;
diff --git a/src/pages/blog/[slug].astro b/src/pages/blog/[slug].astro
@@ -4,6 +4,7 @@ import Article from "../../layouts/components/Article.astro";
import { blogs } from "../../blogs";
import schemas from "../../schemas/index";
+import { SITE_URL } from "../../constants/website";
const blog = blogs.find((blog) => blog.id === Astro.params.slug);
if (!blog) {
@@ -22,7 +23,7 @@ const { getSchemaForBlog, getBreadcrumbSchema } = schemas.blog;
title={`${blog.title} | Damian Myrda`}
description={blog.description}
type="article"
- url={`https://prime8.dev/blog/${blog.id}`}
+ url={`${SITE_URL}/blog/${blog.id}`}
publishedTime={blog.date}
modifiedTime={blog.modifiedDate || blog.date}
keywords={keywords}
diff --git a/src/pages/sitemap.xml.ts b/src/pages/sitemap.xml.ts
@@ -2,6 +2,7 @@ import type { APIRoute } from "astro";
import { fetchGitMetadataForProject } from "../external/git";
import { experience, projects } from "../config";
import { blogs } from "../blogs";
+import { SITE_URL } from "../constants/website";
export const GET: APIRoute = async () => {
const now = new Date().toISOString().split("T")[0];
@@ -58,7 +59,7 @@ export const GET: APIRoute = async () => {
${allPages
.map(
(page) => ` <url>
- <loc>${URL}${page.url}</loc>
+ <loc>${SITE_URL}${page.url}</loc>
<lastmod>${page.lastmod || now}</lastmod>
<changefreq>${page.changefreq}</changefreq>
<priority>${page.priority}</priority>