私は通常のexpress.jsアプリを持っています、私は使用しています
app.use(express.compress())
gzip 応答を圧縮するために、node.js で通常のビュー ページに移動すると、ブラウザーで gzip を使用して提供されているものとしてすべて表示されます。しかし、バックボーン アプリを使用してページにアクセスすると、応答が gzip されません。多分私はここで何かを逃しています。これは私の app.coffee がどのように見えるかです:
app = express()
app.use(express.compress())
app.set "port", process.env.PORT or 3000
app.set "views", __dirname + "/views"
app.set "view engine", "jade"
app.engine 'hamlc', require('haml-coffee').__express
app.use express.favicon()
app.use express.logger("dev")
app.use express.bodyParser()
app.use express.methodOverride()
app.use express.static(path.join(__dirname, "public"))
app.use('/dist', express.static(__dirname + '/dist'));
app.use('/docs', express.static(__dirname + '/docs'));
app.use('/tmp', express.static(__dirname + '/tmp'));
app.use require('connect-assets')()
私には普通の app.coffee のように思えます。これが、require.js がビューに読み込まれる方法です。
- if(settings.env == 'production')
script(type='text/javascript', data-main='/dist/js/main.js', src='javascripts/backbone/marionette/require.js')
- else
script(type='text/javascript', data-main='javascripts/backbone/main.js', src='javascripts/backbone/marionette/require.js')
バックボーン アプリは正常にロードされます。唯一の問題は、gzip されていないことです。何か案は?