feat: migratie naar workshopclaudecode.nl als root domein
- vite.config base van /workshopclaudecode/ naar / - index.html canonical en OG/Twitter URLs naar workshopclaudecode.nl - public/.htaccess verwijderd (niet meer nodig zonder Apache) - preflight foutmelding generieker (niet meer hardcoded sub-pad) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
d46434b7e5
commit
d43ce49aa7
4 changed files with 7 additions and 21 deletions
10
index.html
10
index.html
|
|
@ -8,24 +8,24 @@
|
||||||
<meta name="description" content="Leer Claude Code in 1 ochtend. Van installatie tot werkende applicaties. Kleine groep, hands-on, 3 april 2026 in Utrecht." />
|
<meta name="description" content="Leer Claude Code in 1 ochtend. Van installatie tot werkende applicaties. Kleine groep, hands-on, 3 april 2026 in Utrecht." />
|
||||||
|
|
||||||
<!-- Canonical -->
|
<!-- Canonical -->
|
||||||
<link rel="canonical" href="https://frankmeeuwsen.com/workshopclaudecode/" />
|
<link rel="canonical" href="https://workshopclaudecode.nl/" />
|
||||||
|
|
||||||
<!-- OpenGraph -->
|
<!-- OpenGraph -->
|
||||||
<meta property="og:type" content="website" />
|
<meta property="og:type" content="website" />
|
||||||
<meta property="og:locale" content="nl_NL" />
|
<meta property="og:locale" content="nl_NL" />
|
||||||
<meta property="og:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" />
|
<meta property="og:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" />
|
||||||
<meta property="og:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 3 april 2026 in Utrecht." />
|
<meta property="og:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 3 april 2026 in Utrecht." />
|
||||||
<meta property="og:url" content="https://frankmeeuwsen.com/workshopclaudecode/" />
|
<meta property="og:url" content="https://workshopclaudecode.nl/" />
|
||||||
<meta property="og:image" content="https://frankmeeuwsen.com/workshopclaudecode/og-image.png" />
|
<meta property="og:image" content="https://workshopclaudecode.nl/og-image.png" />
|
||||||
<meta property="og:image:width" content="1200" />
|
<meta property="og:image:width" content="1200" />
|
||||||
<meta property="og:image:height" content="630" />
|
<meta property="og:image:height" content="630" />
|
||||||
<meta property="og:site_name" content="Frank Meeuwsen" />
|
<meta property="og:site_name" content="Workshop Claude Code" />
|
||||||
|
|
||||||
<!-- Twitter Card -->
|
<!-- Twitter Card -->
|
||||||
<meta name="twitter:card" content="summary_large_image" />
|
<meta name="twitter:card" content="summary_large_image" />
|
||||||
<meta name="twitter:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" />
|
<meta name="twitter:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" />
|
||||||
<meta name="twitter:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 3 april 2026 in Utrecht." />
|
<meta name="twitter:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 3 april 2026 in Utrecht." />
|
||||||
<meta name="twitter:image" content="https://frankmeeuwsen.com/workshopclaudecode/og-image.png" />
|
<meta name="twitter:image" content="https://workshopclaudecode.nl/og-image.png" />
|
||||||
|
|
||||||
<!-- Umami Analytics -->
|
<!-- Umami Analytics -->
|
||||||
<script defer src="https://umami.dutchstack.nl/script.js" data-website-id="bceaa80a-f2be-4215-8421-3a78d14601c3"></script>
|
<script defer src="https://umami.dutchstack.nl/script.js" data-website-id="bceaa80a-f2be-4215-8421-3a78d14601c3"></script>
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ BAD_AVATAR=$(grep -rn "avatar:\s*[\"']/[a-zA-Z0-9]" src/ --include="*.jsx" --inc
|
||||||
|
|
||||||
if [ -n "$BAD_PATHS" ] || [ -n "$BAD_AVATAR" ]; then
|
if [ -n "$BAD_PATHS" ] || [ -n "$BAD_AVATAR" ]; then
|
||||||
echo " FOUT: Hardcoded asset paden gevonden zonder BASE_URL prefix!"
|
echo " FOUT: Hardcoded asset paden gevonden zonder BASE_URL prefix!"
|
||||||
echo " Deze werken lokaal maar breken op productie (/workshopclaudecode/)."
|
echo " Deze breken zodra Vite base path verandert (bijv. naar een sub-pad)."
|
||||||
echo ""
|
echo ""
|
||||||
[ -n "$BAD_PATHS" ] && echo "$BAD_PATHS" | sed 's/^/ /'
|
[ -n "$BAD_PATHS" ] && echo "$BAD_PATHS" | sed 's/^/ /'
|
||||||
[ -n "$BAD_AVATAR" ] && echo "$BAD_AVATAR" | sed 's/^/ /'
|
[ -n "$BAD_AVATAR" ] && echo "$BAD_AVATAR" | sed 's/^/ /'
|
||||||
|
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
# SPA routing: stuur alle requests naar index.html
|
|
||||||
# zodat React Router de routes /bedankt, /inschrijven etc. kan afhandelen
|
|
||||||
<IfModule mod_rewrite.c>
|
|
||||||
RewriteEngine On
|
|
||||||
RewriteBase /workshopclaudecode/
|
|
||||||
|
|
||||||
# Als het bestand of directory bestaat, serveer het direct
|
|
||||||
RewriteCond %{REQUEST_FILENAME} !-f
|
|
||||||
RewriteCond %{REQUEST_FILENAME} !-d
|
|
||||||
|
|
||||||
# Alles anders naar index.html
|
|
||||||
RewriteRule ^ index.html [QSA,L]
|
|
||||||
</IfModule>
|
|
||||||
|
|
@ -3,12 +3,11 @@ import react from '@vitejs/plugin-react'
|
||||||
import { editorApiPlugin } from './vite-plugin-editor-api.js'
|
import { editorApiPlugin } from './vite-plugin-editor-api.js'
|
||||||
|
|
||||||
// https://vite.dev/config/
|
// https://vite.dev/config/
|
||||||
// base path alleen voor production build, lokaal blijft het op /
|
|
||||||
// editorApiPlugin alleen actief in dev mode voor de Markdown editor
|
// editorApiPlugin alleen actief in dev mode voor de Markdown editor
|
||||||
export default defineConfig(({ command }) => ({
|
export default defineConfig(({ command }) => ({
|
||||||
plugins: [
|
plugins: [
|
||||||
react(),
|
react(),
|
||||||
command === 'serve' ? editorApiPlugin() : null,
|
command === 'serve' ? editorApiPlugin() : null,
|
||||||
].filter(Boolean),
|
].filter(Boolean),
|
||||||
base: command === 'build' ? '/workshopclaudecode/' : '/',
|
base: '/',
|
||||||
}))
|
}))
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue