У меня есть приложение Express 3.0, и я пытаюсь использовать промежуточное программное обеспечение static()
, staticCache()
и compress()
для обслуживания и сжатия моих статических файлов. Это моя текущая функция app.configure()
:
app.configure(function() {
app.use(express.favicon(__dirname + '/public/favicon.ico', {maxAge: 86400000}));
app.use(express.bodyParser());
app.use(express.cookieParser('foo'));
app.set('views', __dirname + '/views');
app.engine('.html', mustache({cache: true}).render);
app.use(express.session({ store: sessionStore, secret: 'foo'}));
app.use(express.staticCache());
app.use(express.static(__dirname + '/public', {maxAge: 86400000}));
app.use(express.compress());
});
// routes are loaded here
В этой конфигурации YSlow сообщает, что мои файлы .css и .js не сжаты, и я не могу получить кеш-клип, не очищая мой браузер и не обновляя страницу несколько раз. Я также попытался вставить отладочную инструкцию в промежуточном программном обеспечении staticCache, чтобы сообщить об ошибках кэша, а бег ab -n 10000 -c 500 показывает 0 хитов кэша.
Очевидно, что я делаю что-то неправильно (я предполагаю, что порядок или параметры испорчены), но я не могу понять, что это такое. У кого-нибудь есть рабочий пример с этими тремя компонентами промежуточного программного обеспечения, которые работают правильно вместе?