15

Expressでは、このように静的ファイルにexpiresヘッダーを追加します

app.use(function (req, res, next) {

    // static folder: css
    if (req.url.indexOf('/css/') === 0) {
        res.setHeader('Cache-Control', 'public, max-age=345600'); // 4 days
        res.setHeader('Expires', new Date(Date.now() + 345600000).toUTCString());
    }

});

app.use(express.static(root + '/app'));

私ができないのは、このような favicon.ico リクエストをキャッチすることです。

Node/Expressのfaviconにexpiresヘッダーを追加する方法はありますか?
favicon.ico リクエストが他の静的ファイルと大きく異なる理由は何ですか?

どうも!

4

3 に答える 3

12

maxAgefavicon と static middleware の両方にオプションを渡すことができます:

app.use(express.favicon(__dirname + '/public/favicon.ico', { maxAge: 2592000000 }));

ソース:

  1. https://groups.google.com/forum/?fromgroups#!topic/express-js/W5mkAorVrW8
  2. http://www.senchalabs.org/connect/favicon.html
于 2013-11-04T13:18:43.757 に答える
7

代わりにそれを使用する方がSEOフレンドリーだと思います

app.use(express.static(__dirname + '/public', {
        maxAge: 86400000,
        setHeaders: function(res, path) {
            res.setHeader("Expires", new Date(Date.now() + 2592000000*30).toUTCString());
          }
    }))
于 2016-02-26T14:15:42.013 に答える