@@ -11,7 +11,7 @@ import {
11
11
hasNuxtModuleCompatibility ,
12
12
useLogger ,
13
13
} from '@nuxt/kit'
14
- import { withBase , withLeadingSlash , withoutLeadingSlash , withoutTrailingSlash } from 'ufo'
14
+ import { joinURL , withBase , withLeadingSlash , withoutLeadingSlash , withoutTrailingSlash } from 'ufo'
15
15
import { installNuxtSiteConfig } from 'nuxt-site-config-kit'
16
16
import type { NuxtI18nOptions } from '@nuxtjs/i18n'
17
17
import { defu } from 'defu'
@@ -63,6 +63,7 @@ export default defineNuxtModule<ModuleOptions>({
63
63
dynamicUrlsApiEndpoint : '/api/_sitemap-urls' ,
64
64
urls : [ ] ,
65
65
sortEntries : true ,
66
+ sitemapsPathPrefix : '/__sitemap__/' ,
66
67
xsl : '/__sitemap__/style.xsl' ,
67
68
xslTips : true ,
68
69
strictNuxtContentPaths : false ,
@@ -320,8 +321,8 @@ declare module 'vue-router' {
320
321
nuxt . options . nitro . routeRules [ '/sitemap_index.xml' ] = routeRules
321
322
if ( typeof config . sitemaps === 'object' ) {
322
323
for ( const k in config . sitemaps ) {
323
- nuxt . options . nitro . routeRules [ `/sitemap/ ${ k } .xml`] = routeRules
324
- nuxt . options . nitro . routeRules [ `/${ k } -sitemap.xml` ] = { redirect : `/sitemap/ ${ k } .xml` }
324
+ nuxt . options . nitro . routeRules [ joinURL ( config . sitemapsPathPrefix , `/ ${ k } .xml`) ] = routeRules
325
+ nuxt . options . nitro . routeRules [ `/${ k } -sitemap.xml` ] = { redirect : joinURL ( config . sitemapsPathPrefix , ` ${ k } .xml`) }
325
326
}
326
327
}
327
328
else {
@@ -400,7 +401,7 @@ declare module 'vue-router' {
400
401
middleware : false ,
401
402
} )
402
403
addServerHandler ( {
403
- route : `/sitemap/ **:sitemap`,
404
+ route : joinURL ( config . sitemapsPathPrefix , `/ **:sitemap`) ,
404
405
handler : resolve ( './runtime/nitro/routes/sitemap/[sitemap].xml' ) ,
405
406
lazy : true ,
406
407
middleware : false ,
@@ -514,6 +515,7 @@ declare module 'vue-router' {
514
515
// needed for nuxt/content integration and prerendering
515
516
discoverImages : config . discoverImages ,
516
517
discoverVideos : config . discoverVideos ,
518
+ sitemapsPathPrefix : config . sitemapsPathPrefix ,
517
519
518
520
/* @nuxt /content */
519
521
isNuxtContentDocumentDriven,
0 commit comments