私は次のコードを持っています:
app.js
[...]
server.get(/\/docs\/public\/?.*/, restify.serveStatic({
directory: './public'
}));
server.listen(1337, function() {
console.log('%s listening at %s', server.name, server.url);
});
そして私は次のファイル構造を持っています
app.js
public/
index.html
だから私はブラウジングしてみます:
http://localhost:1337/docs/public/index.html
そして私は得る
{
code: "ResourceNotFound",
message: "/docs/public/index.html"
}
いくつかのバリエーションを試してみましたが、どれもうまくいかなかったようです。
私はそれが私が行方不明になっているかなり明白な何かであるはずだと確信しています
restify
は、ルートパス全体のプレフィックスとしてdirectory
オプションを使用します。あなたの場合、それは./public/docs/public/index.html
を探します。
@NdeeJimの回答に基づいて、すべての静的リソースを提供する方法を疑問に思っている人へ:
server.get(/\/?.*/, restify.plugins.serveStatic({
directory: __dirname,
default: 'index.html',
match: /^((?!app.js).)*$/ // we should deny access to the application source
}));