静态适配器不适用于 nginx 和刷新页面
static adapter not working with nginx and refreshing pages
这是我的配置:
import adapter from '@sveltejs/adapter-static';
import preprocess from 'svelte-preprocess';
import path from 'path';
/** @type {import('@sveltejs/kit').Config} */
const config = {
// Consult https://github.com/sveltejs/svelte-preprocess
// for more information about preprocessors
preprocess: preprocess(),
kit: {
// hydrate the <div id="svelte"> element in src/app.html
target: '#svelte',
adapter: adapter({
// default options are shown
pages: 'build',
assets: 'build',
fallback: null
}),
vite: {
resolve: {
alias: {
$components: path.resolve('./src/components'),
$stores: path.resolve('./src/stores'),
$api: path.resolve('./src/api')
}
}
}
}
};
export default config;
但是,如果我在浏览器中刷新任何页面,我会收到 404....
索引有效,但如果我刷新页面则没有别的。
在 nginx 文档中查找“try_files”。
基本上,如果文件不存在,它会重定向到 index.html,这将允许客户端路由器处理刷新
try_files $uri $uri/ /index.html;
这是我的配置:
import adapter from '@sveltejs/adapter-static';
import preprocess from 'svelte-preprocess';
import path from 'path';
/** @type {import('@sveltejs/kit').Config} */
const config = {
// Consult https://github.com/sveltejs/svelte-preprocess
// for more information about preprocessors
preprocess: preprocess(),
kit: {
// hydrate the <div id="svelte"> element in src/app.html
target: '#svelte',
adapter: adapter({
// default options are shown
pages: 'build',
assets: 'build',
fallback: null
}),
vite: {
resolve: {
alias: {
$components: path.resolve('./src/components'),
$stores: path.resolve('./src/stores'),
$api: path.resolve('./src/api')
}
}
}
}
};
export default config;
但是,如果我在浏览器中刷新任何页面,我会收到 404....
索引有效,但如果我刷新页面则没有别的。
在 nginx 文档中查找“try_files”。
基本上,如果文件不存在,它会重定向到 index.html,这将允许客户端路由器处理刷新
try_files $uri $uri/ /index.html;