无法找到Express公共目录

时间:2013-12-20 05:29:43

标签: node.js twitter-bootstrap express

我正在尝试将Node.js与Express一起使用,并且我读到了声明“公共”目录以提供静态文件的能力。我正在尝试将我的bootstrap css / js文件放在公共目录中,但我一直在使用404.

快递:

app.use(express.static(path.join(__dirname, '../public')));
console.log(path.join(__dirname, '../public'));
//Output: D:/app/public

在HTML中:

<script src="http://localhost:6969/app/public/resources/bootstrap/js/bootstrap.js"></script>

现在在我的文件系统中:

D:\app\public //The folder
D:\app\public\resources\bootstrap\js\bootstrap.js //The file that the 404 is on

我不知道我还缺少什么。我想我可能会误解app.use,或者这个公用文件夹的工作方式。

2 个答案:

答案 0 :(得分:2)

当您使用express声明公用文件夹时,将使用该公用文件夹作为根('/')获取所有静态文件。为了解决这个问题,
变化:
<script src="http://localhost:6969/app/public/resources/bootstrap/js/bootstrap.js"></script>

要:
<script src="/resources/bootstrap/js/bootstrap.js"></script>

答案 1 :(得分:1)

试试这个:

<script src="resources/bootstrap/js/bootstrap.js"></script>