@@ -51,7 +51,7 @@ const getNetlifyRoutes = (nextRoute) => {
51
51
return netlifyRoutes
52
52
}
53
53
54
- exports . generateRedirects = async ( { netlifyConfig, basePath } ) => {
54
+ exports . generateRedirects = async ( { netlifyConfig, basePath, i18n } ) => {
55
55
const { dynamicRoutes } = await readJSON ( join ( netlifyConfig . build . publish , 'prerender-manifest.json' ) )
56
56
57
57
const redirects = [ ]
@@ -76,9 +76,12 @@ exports.generateRedirects = async ({ netlifyConfig, basePath }) => {
76
76
redirects . push ( ...getNetlifyRoutes ( route ) , ...getNetlifyRoutes ( dataRoute ) )
77
77
} )
78
78
79
+ // Needed only for /_next/static
80
+ const i18nSplat = i18n ? '/:locale' : ''
81
+
79
82
// This is only used in prod, so dev uses `next dev` directly
80
83
netlifyConfig . redirects . push (
81
- { from : `${ basePath } /_next/static/*` , to : ' /static/:splat' , status : 200 } ,
84
+ { from : `${ basePath } ${ i18nSplat } /_next/static/*` , to : ` ${ i18nSplat } /static/:splat` , status : 200 } ,
82
85
{
83
86
from : `${ basePath } /*` ,
84
87
to : HANDLER_FUNCTION_PATH ,
@@ -119,7 +122,6 @@ exports.setIncludedFiles = ({ netlifyConfig, publish }) => {
119
122
netlifyConfig . functions [ functionName ] . included_files . push (
120
123
`${ publish } /server/**` ,
121
124
`${ publish } /serverless/**` ,
122
- `${ publish } /static/**` ,
123
125
`${ publish } /*.json` ,
124
126
`${ publish } /BUILD_ID` ,
125
127
)
0 commit comments