【问题标题】:SvelteKit build (w/ adapter-node) 404 on newly created static filesSvelteKit 在新创建的静态文件上构建(带适配器节点)404
【发布时间】:2022-06-23 09:15:13
【问题描述】:

使用@sveltejs/adapter-node: 1.0.0-next.61@sveltejs/kit: ^1.0.0-next.225

以下问题仅发生在应用程序的构建版本上,而不发生在不会发生的开发服务器上。

上传新文件时,我的应用程序不断返回有关这些新创建文件的 404,就好像应用程序对这些文件视而不见一样。有趣的是,重新启动服务器时会发现上述图像。

创建请求成功:

该文件已在文件系统上正确创建,应由页面加载,如 json 响应中所示,该响应列出了页面上要加载的所有文件:

但是,当尝试获取文件时,服务器会以 404 响应,尽管它的路径是正确的:

【问题讨论】:

  • 同样的问题。看起来很疯狂! :0
  • 我为此快疯了!你解决了吗?
  • @MitjaKukovec 遗憾的是没有;我通过 nginx 提供 static/ 文件夹来解决这个问题

标签: javascript node.js svelte svelte-3 sveltekit


【解决方案1】:

实际上我找到了两个解决方案,但都只是解决这个非常烦人的问题的解决方法。

  • import 方式:正确配置它非常棘手(另请阅读 this),总的来说,如果您需要导入动态路径(在导入路径中包含变量),它会变得很痛苦,因为它是我的情况。

  • CDN 方式:通过指向具有专用(子)域的网络服务器,将静态文件夹用作 CDN。通过这种方式,您可以将资产与成功联系起来,因为它们是“外部”资源(例如 https://cdn.mysite.com/file1.pnghttps://cdn.mysite.com/file2.jpg)。

奖励:如果您选择 CDN 解决方法,最好将 Externalfetch 设置为绕过外部 DNS 解析并保持内部流量。

【讨论】:

    猜你喜欢
    • 2022-01-21
    • 2021-12-01
    • 1970-01-01
    • 2021-10-20
    • 2022-08-04
    • 2021-08-03
    • 2023-02-26
    • 2021-12-29
    • 1970-01-01
    相关资源
    最近更新 更多