像 /foo
和 /foo/
这样的两个 URL 看起来可能一样,但实际上它们是不同的。像 ./bar
这样的相对 URL 在第一种情况下将解析为 /bar
,在第二种情况下将解析为 /foo/bar
,搜索引擎会将其视为单独的条目,从而损害你的 SEO。
简而言之,对尾部斜杠过于随意是一个坏主意。默认情况下,SvelteKit 会去除尾部斜杠,这意味着对 /foo/
的请求将导致重定向到 /foo
。
如果你希望确保始终存在尾部斜杠,则可以相应地指定 trailingSlash
选项
src/routes/always/+page.server
export const trailingSlash = 'always';
要同时适应这两种情况(不建议!),请使用 'ignore'
src/routes/ignore/+page.server
export const trailingSlash = 'ignore';
默认值为 'never'
。
是否应用尾部斜杠会影响预渲染。像 /always/
这样的 URL 将保存到磁盘上,名为 always/index.html
,而像 /never
这样的 URL 将保存为 never.html
。
1
2
<h1>trailingSlash</h1>