2015-08-26 43 views

回答

5

最后一个示例使用相对路径,如果您从具有public作为子目录的目录启动应用程序,该路径将起作用。

但是,如果您从另一个目录启动您的应用程序,它将会中断。让我们假设你的应用程序位于/path/to/app/directory但你开始你的脚本,而/tmp是当前(工作)目录:

/tmp$ node /path/to/app/directory/app.js 

在这种情况下,快速将尝试使用/tmp/public的位置,为您的静态文件,这是不正确的。

使用path.join(__dirname, 'public')将创建一个绝对路径,使用app.js所在的目录作为基础。在上面的例子中,它将解析为/path/to/app/directory/public,如果您从另一个工作目录启动脚本,这也是有效的。

相关问题