2017-02-06 2 views
1

나는 내 컨텐츠를 압축 할 수없는 이유를 찾을 수 없다. 나는 많은 방법을 시도했지만 컬 (curl -I -H ' 인코딩 허용 : 내 콘텐츠 압축하기 위해 어떤 방식으로 정적 인 페이지 또는 기본 로컬 콘텐츠 (/) 내가 찾을 수에 GZIP을 'http://localhost:8080/free.html)표현과 압축, 내가 잘못한 것을 발견 할 수 없다 :-(

내가 여기 을 잘못 만들어 내 코드입니다 무슨 짓을?

var express = require('express'); 
 
var compression = require('compression'); 
 
var morgan =  require('morgan'); 
 
var favicon =  require('serve-favicon'); 
 

 
var app =   express(); 
 

 
app.use(compression({ 
 
    filter: function() { return true; } 
 
})); 
 
app.use(morgan('combined')); 
 
app.use(favicon(__dirname + '/public/favicon.ico')); 
 
app.use(express.static(__dirname + '/public')); 
 

 

 

 
app.get('/', function(req, res) { 
 
    res.setHeader('Content-Type', 'text/plain'); 
 
    res.end('Vous êtes à l\'accueil'); 
 
}); 
 
app.use(function(req, res){ 
 
    res.send(404); 
 
}); 
 

 
app.listen(8080);

감사

그레

답변

1

내가 이유 아직 파악하지 않은, 그러나 임계 값이 충분히 낮게 설정되어 있지 않은 경우, 그것을 인코딩하지 않을 것으로 보인다. 다음 예는 다음과 같습니다 6 기본입니다

var express = require('express') 
var app = express() 
var compression = require('compression') 

app.use(compression({ threshold: 6 })) 
// app.use(express.static(__dirname + '/dist')) 

app.all("/*", function(req, res, next) { 
    res.send('done') 
}) 

var server = app.listen(8080) 

워드 프로세서 상태 것이다. 테스트 할 때 :

$ curl -i -H 'Accept-Encoding: gzip' http://localhost:8080 

Content-Encoding 헤더가 설정되지 않았습니다. 이를 4 이하의 임계 값으로 설정하면 인코딩 된 콘텐츠로 응답합니다.

HTTP/1.1 200 OK 
X-Powered-By: Express 
Content-Type: text/html; charset=utf-8 
Vary: Accept-Encoding 
Content-Encoding: gzip // <—————————— 
Date: Mon, 06 Feb 2017 20:23:24 GMT 
Connection: keep-alive 
Transfer-Encoding: chunked 

K??K??-⏎  
+0

당신이 펑! 임계점을 추가하는 것이 요점이었습니다. 고마워요! –

관련 문제