diff --git a/nginx.conf b/nginx.conf index 1382da5..14df028 100644 --- a/nginx.conf +++ b/nginx.conf @@ -39,6 +39,12 @@ server { access_log off; } + # Legacy Keymaster paths moved permanently to the dedicated domain. + # Match both localized and non-localized URLs. + location ~* ^/(?:[a-z]{2}/)?(?:keymaster|k/dashboard)/?$ { + return 301 https://keymaster.beammp.com/; + } + # SPA fallback: all other paths go to index.html so Vue Router can render the # correct view (including the NotFound page for unknown routes). location / { diff --git a/package-lock.json b/package-lock.json index 8e648e2..c93bb67 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "beammp-website", - "version": "2.5.1", + "version": "2.5.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "beammp-website", - "version": "2.5.1", + "version": "2.5.2", "dependencies": { "@tailwindcss/typography": "^0.5.20", "@tailwindcss/vite": "^4.1.17", diff --git a/package.json b/package.json index 0bb2733..15f4bb9 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "beammp-website", "private": true, - "version": "2.5.1", + "version": "2.5.2", "type": "module", "scripts": { "dev": "vite", diff --git a/src/routes/index.js b/src/routes/index.js index f6716f2..9850d39 100644 --- a/src/routes/index.js +++ b/src/routes/index.js @@ -86,6 +86,22 @@ const baseRoutes = [ requiresAuth: false, }, }, + + // Redirect route for old keymaster + { + path: 'keymaster', + redirect: (to) => { + window.location.replace('https://keymaster.beammp.com/') + return `/${to.params.locale || 'en'}` + }, + }, + { + path: 'k/dashboard', + redirect: (to) => { + window.location.replace('https://keymaster.beammp.com/') + return `/${to.params.locale || 'en'}` + }, + }, ] const routes = [