Expressによる静的ファイルの管理
6306 ワード
画像、CSS、JavaScriptファイルなどの静的ファイルは、Expressに内蔵された
静的リソースファイルが存在するディレクトリをパラメータとして
これで、
すべてのファイルのパスは、保存ディレクトリに対するものであるため、静的ファイルを保存するディレクトリ名はURLに表示されません.
静的リソースが複数のディレクトリの下に保存されている場合は、
静的リソースファイルにアクセスすると、
これで、
Expressによる静的ファイルの管理
画像、CSS、JavaScriptファイルなどの静的ファイルは、Expressに内蔵された
express.static
によって容易に管理できます.静的リソースファイルが存在するディレクトリをパラメータとして
express.static
ミドルウェアに渡すと、静的リソースファイルへのアクセスが提供されます.たとえば、 public
ディレクトリに画像、CSS、JavaScriptファイルが配置されているとします.app.use(express.static('public'));
これで、
public
ディレクトリの下のファイルにアクセスできます.http://localhost:3000/images/kitten.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/app.js
http://localhost:3000/images/bg.png
http://localhost:3000/hello.html
すべてのファイルのパスは、保存ディレクトリに対するものであるため、静的ファイルを保存するディレクトリ名はURLに表示されません.
静的リソースが複数のディレクトリの下に保存されている場合は、
express.static
ミドルウェアを複数回呼び出すことができます.app.use(express.static('public'));
app.use(express.static('files'));
静的リソースファイルにアクセスすると、
express.static
ミドルウェアはディレクトリに追加された順序で必要なファイルを検索します.express.static
でアクセスしたすべてのファイルを「仮想(virtual)」ディレクトリの下に保存したい場合は、次のように静的リソースディレクトリにマウントパスを指定することで実現できます.app.use('/static', express.static('public'));
これで、
public
ディレクトリの下のファイルに「/static」接頭辞付きのアドレスでアクセスできます.http://localhost:3000/static/images/kitten.jpg
http://localhost:3000/static/css/style.css
http://localhost:3000/static/js/app.js
http://localhost:3000/static/images/bg.png
http://localhost:3000/static/hello.html