svelte - 静态适配器不适用于 nginx 和刷新页面

标签 svelte svelte-3 sveltekit

这是我的配置:

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;

关于svelte - 静态适配器不适用于 nginx 和刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71367087/

相关文章:

sveltekit - 有没有办法删除以前的 session 而不需要硬刷新(sveltekit 和 Supabase)

SvelteKit + Vercel 断路

500排的Svelte倒车台感觉很慢?

svelte - 如何在 Svelte 中设置事件的全局样式

svelte - 如何替换 Svelte 中目标的内容而不是附加到子项?

html - 在Svelte 3中如何具有条件属性?

svelte - 在 sapper/svelt 中是否有组件的快捷方式

browser-cache - 如何强制客户端不缓存 svelte/rollup bundle.js?

Svelte - 输入值并不总是更新

typescript - 如何正确推断 Svelte Prop 类型?