Я пытаюсь сделать nginx proxy_server для приложения nodejs на порту 3000 для тестирования со сжатием, при этом:
curl -I -H 'Accept-Encoding: gzip, deflate' http://localhost/json
Я делаю так:
и когда curl его с -i с телом отображается
curl -i -H 'Accept-Encoding: gzip, deflate' http://localhost/json
у меня получилось это:
в файле nginx.conf:
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://localhost:3000;
}
в узле app.js
//..
app.get('/json',(req,res)=>{
res.json({Hello:'JSON'})
});
и снова это кажется странным, когда отправляешь какой-то текст для тестирования gzip
app.get('/', (req,res)=>{
res.end('lorem ipsum ........ 100(lorem ipsum long text) ');
});
содержимое не уменьшается, но когда я явно добавляю content-type, размер содержимого сжимается.
app.get('/', (req,res)=>{
res.setHeader('Content-type','text/html');
res.end('lorem ipsum ........ 100(lorem ipsum long text) ');
});
решение1
-I
выполняет запрос HEAD и одновременно -i
выполняет запрос GET.
Скорее всего, ваше приложение отвечает только на запросы GET.