Express.js公用文件夹内容仅在登录时可用

时间:2014-12-22 12:41:47

标签: node.js express

我试图通过http://<IP Address>:3000/image.jpg访问公共目录中的静态图像文件,只有当我登录到我的服务器时才可用。一旦我退出,我就

GET 404在网络标签中找不到,而不是页面:

 Error: Not Found
   at module.exports (<path>/app.js:48:15)
   at Layer.handle [as handle_request] (<path>/node_modules/express/lib/router/layer.js:82:5)
   at trim_prefix (<path>/node_modules/express/lib/router/index.js:271:13)
   at <path>/node_modules/express/lib/router/index.js:238:9
   at Function.proto.process_params (<path>/node_modules/express/lib/router/index.js:313:12)
   at <path>/node_modules/express/lib/router/index.js:229:12
   at Function.match_layer (<path>/node_modules/express/lib/router/index.js:296:3)
   at next (<path>/node_modules/express/lib/router/index.js:190:10)
   at <path>/node_modules/express/lib/router/index.js:192:16
   at Function.match_layer (<path>/node_modules/express/lib/router/index.js:296:3)

我的app.use(express.static(__dirname + '/public'));文件中有app.js

我的所有路由都运行正常,当我退出时请求任何路由时我收到JSON响应,我只会遇到公共目录中的文件问题。

我在forever start -c nodemon bin/www

的服务器上运行我的脚本

我尝试将app.use(express.static(__dirname + '/public'));移到顶部但同样的问题。

有没有人知道为什么只有在我登录服务器时才能访问公用文件夹?

1 个答案:

答案 0 :(得分:0)

这是项目文件夹的所有者和组的问题。我已按照this article(First Express App部分)中的步骤操作,现在一切正常。