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 和所有图像文件都不再加载。
注意: dockerfile
与 vapor 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
命令中显示的方式设置所有路径。
我 运行在我的 Mac 上使用 Xcode 宁 Vapor 4.3 和 Leaf 没有任何问题。
public目录中间件已启用:
let fileMW = FileMiddleware(publicDirectory: directory)
app.middleware.use(fileMW)
一旦我在 docker 上使用默认 dockerfile
和 运行 构建图像,css 和所有图像文件都不再加载。
注意: dockerfile
与 vapor 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
命令中显示的方式设置所有路径。