aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--astro.config.mjs7
-rw-r--r--src/pages/kodaira-data/events/[...path].astro13
2 files changed, 20 insertions, 0 deletions
diff --git a/astro.config.mjs b/astro.config.mjs
index 03c5b9e..6b6406b 100644
--- a/astro.config.mjs
+++ b/astro.config.mjs
@@ -87,6 +87,13 @@ export default defineConfig({
base: "/",
trailingSlash: "always",
compressHTML: true,
+ // 旧URLからの転送。本番は .htaccess が301で返すが、astro dev / preview では
+ // .htaccess が効かないため、ここでも同じ転送を定義しておく。
+ redirects: {
+ "/kodaira-data/hp-archive/schedule": "/kodaira/events/",
+ "/kodaira-data/schedule": "/kodaira/events/",
+ "/kodaira-data/events": "/kodaira/events/",
+ },
image: {
layout: "constrained",
responsiveStyles: true,
diff --git a/src/pages/kodaira-data/events/[...path].astro b/src/pages/kodaira-data/events/[...path].astro
new file mode 100644
index 0000000..e09cc30
--- /dev/null
+++ b/src/pages/kodaira-data/events/[...path].astro
@@ -0,0 +1,13 @@
+---
+// 旧URL(/kodaira-data/events/2026-11/ など)から新しいURLへの転送。
+// 本番のApacheは public/.htaccess が301で返す。astro dev / preview では
+// .htaccess が効かないため、ここで同じ転送を用意しておく。
+import { fiscalYearKeys, monthKeys } from '@/lib/schedule-months';
+
+export function getStaticPaths() {
+ return [...monthKeys, ...fiscalYearKeys].map((path) => ({ params: { path } }));
+}
+
+const { path } = Astro.params;
+return Astro.redirect(`/kodaira/events/${path}/`, 301);
+---