0

我的第一个节点服务器应用程序在 localhost 上运行良好,但在 digitalocean (ubuntu) 环境中我无法获得工作路径。

这条线

require("./lib/dbHelper").initilize();

产生这个错误

Error: Cannot find module './lib/dbHelper'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object.<anonymous> (/var/www/wsApp/app.js:18:1)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Function.Module.runMain (module.js:447:10)

而这条线

let User = require("../models/User");

生成此错误

Error: Cannot find module '../models/User'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object.<anonymous> (/var/www/wsApp/routes/auth.js:5:12)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)

我在这里(https://gist.github.com/branneman/8048520)查看了解决方案,我尝试了建议 3、4.2 和 6,但没有任何改变错误消息。

值得注意的是,这条线似乎工作正常

app.use("/", require("./routes/auth.js"));

作为节点的新手,我不太了解路径映射,最后一个会起作用而第一个不起作用似乎很奇怪,因为它们都使用点语法......

4

1 回答 1

0

如果您在不区分大小写的文件系统(OS X 或 Windows)上进行开发,您可能会被 linux 文件系统区分大小写的事实绊倒。例如,检查“dbHelper”中的“H”在您的 git 存储库中是否真的是大写的。

于 2016-03-14T13:46:03.633 回答