我最近遇到了POCO project的c ++并且非常感兴趣。它还有一个我想要玩的内置HttpServer。
我正在关注这些示例并构建了一个简单的http服务器侦听端口8000.然后我将我的nginx配置为proxy_pass所有请求到端口8000。
使用代理,浏览器将内容大小显示为第一个字符,并在尾部添加0个字符。例如,我只响应来自HttpServer的“test”字符串,然后在浏览器端响应为“4 test 0”。当我直接访问端口8000时,没有任何数字正确显示响应。
因为当我使用nginx代理时出现问题所以我认为我的代理设置有问题。我阅读了nginx的proxy configuration wiki页面,但无法理解为什么会这样。
我的nginx conf如下,
upstream pocotest {
server 127.0.0.1:8000;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://pocotest;
proxy_set_header X-Real-Ip $remote_addr;
proxy_buffering on;
proxy_pass_request_body on;
proxy_pass_request_headers on;
}
}
答案 0 :(得分:1)
你得到的是分块编码响应。 4是具有内容“test”的块的长度。分块消息标记结尾的0。 大多数人都不会在响应中添加Transfer-Encoding:chunked头。