Node.js 无法每三次刷新获取静态文件

Node.js cannot GET static files every third refresh

我有一个静态页面设置为指向我的图像目录,该目录由单独服务器上的网站拉取。出于某种原因,当我直接转到图像 URL 时,图像会加载 (Chrome),如果我刷新页面,它会给我这样的错误:

Cannot GET /users/picture

我的 app.js 有这个:

var app = express();
    app.disable('view cache');
    app.use(express.static(__dirname + '/public')); //setup static public directory
    app.use('/users/picture', express.static('./public/images/users'));

... 

加上一些路线和其他东西,比如用于图片上传的 multer()。

出于某种原因,如果我在 Bluemix 上的生产服务器上刷新页面,图片每三次加载一次。否则它会给我这个 Cannot GET route 错误。

会不会跟内存有关?

如果您不小心将多个应用程序绑定到同一个路由,就会发生这种情况。 router/load 平衡器正在根据某些请求选择其他应用程序。确认您的所有应用程序都绑定到 bluemix 仪表板中的正确唯一路由或执行 cf apps

我遇到了同样的问题。我按照提到的步骤 here

Move the static middleware to the top of app.configure function, before all the other app.* calls.

app.use(express.static(__dirname + '/public'));

就我而言,我想提供一个不同的文件夹。所以我把它移到线的上方,就在下方:

var app = express();
app.use(express.static(path.join(__dirname, 'myRootFolder', 'myActualPublicFolder')));