我看到一些非常奇怪的行为,我的 express/node 服务器(使用express.static()
)正确地返回了我的一些文件,而不是子目录中的文件。令人沮丧的是,它在本地使用 node 或 foreman 可以正常工作,但它不能在 heroku 上工作。这个要点在这里有主要文件,我的应用程序结构如下所示:
-app
- index.html
- img/
- base.png
- sub/
- sub.png
- scripts
- base.js
- sub/
- sub.js
- css
- base.css
- sub/
- sub.css
- server
- app.js
index.html 和 base.* 文件都加载正常,它只是 sub.* 文件 404。 express.static 会进入 1 级深,但不是 2 级似乎很奇怪
我尝试了许多不同的配置,包括这个stackoverflow answer。我必须缺少一些简单的东西。谢谢您的帮助。
更新:
当我在 heroku 上的服务器启动时 console.log 以下内容时,我得到:
path.join(__dirname, '../app')
=/app
path.join(__dirname, '/../app')
=/app/app
path.normalize(path.join(__dirname, '../app'))
=/app/app
path.join(process.cwd(), '../app')
=/app/app