【问题标题】:Sveltekit Base URL for subdirectory throws 404子目录的 Sveltekit 基本 URL 抛出 404
【发布时间】:2021-11-21 11:30:07
【问题描述】:

我需要一些了解才能从子目录中提供 Sveltekit 应用程序。我的公司将从一个名为/activ 的子目录中为该应用程序提供服务。我认为像这样更新适当的路径很容易:

svelte.config.js:

kit: {
  ...
  paths: {
    base: "/activ"
  },
  adapter: adapter({
    fallback: 'index.html' // render as SPA
  }),
}

routes/index.svelte:

<svelte:head>
  <base href="/activ">
</svelte:head>

当我npm run build 并将构建复制到服务器上的子目录时,应用程序会按预期加载和运行。

但是,当我尝试从 dev (localhost:3000) 提供服务时,我收到以下错误:

http://localhost:3000

Not Found

http://localhost:3000/activ(子目录和基本 URL 是什么)

404
Not found: 
Error: Not found: 
    at resolve (file:///Users/tomdoe/Sites/__playground/sveltekit-app/node_modules/@sveltejs/kit/dist/ssr.js:1728:13)
    at async respond (file:///Users/tomdoe/Sites/__playground/sveltekit-app/node_modules/@sveltejs/kit/dist/ssr.js:1676:10)
    at async Immediate.<anonymous> (file:///Users/tomdoe/Sites/__playground/sveltekit-app/node_modules/@sveltejs/kit/dist/chunks/index.js:3484:22)

似乎我不明白从 dev (localhost) 提供服务时如何模仿子目录。非常感谢任何帮助!

【问题讨论】:

    标签: svelte sveltekit


    【解决方案1】:

    你应该添加

    rel="external"
    

    阅读以下内容。

    https://kit.svelte.dev/docs#anchor-options-rel-external

    【讨论】:

      猜你喜欢
      • 2018-04-26
      • 1970-01-01
      • 2010-09-28
      • 2017-08-07
      • 2011-07-06
      • 1970-01-01
      • 2018-07-13
      • 2012-05-17
      • 1970-01-01
      相关资源
      最近更新 更多