docker 图像中的 Vapor `Public` 目录未暴露

Vapor `Public` directory inside docker image is not exposed

我 运行在我的 Mac 上使用 Xcode 宁 Vapor 4.3 和 Leaf 没有任何问题。

public目录中间件已启用:

let fileMW = FileMiddleware(publicDirectory: directory)
app.middleware.use(fileMW)

一旦我在 docker 上使用默认 dockerfile 和 运行 构建图像,css 和所有图像文件都不再加载。

注意: dockerfilevapor new 命令附带的完全相同。 (更新至撰写本文之日post)

Safari 显示此错误:

[Error] Did not parse stylesheet at 'http://127.0.0.1/styles/index.css' because non CSS MIME types are not allowed in strict mode.

Chrome 显示此警告:

Resource interpreted as Stylesheet but transferred with MIME type text/plain: "http://127.0.0.1/styles/index.css".

我错过了什么?

看起来这是一个区分大小写的问题! Mac 查找有此问题的文件没有问题,但 Linux 没有!

⚠️ Even if you already set: app.routes.caseInsensitive = true, it will not affect your resources requests.

因此请确保您已完全按照 pwd 命令中显示的方式设置所有路径。