Nginx 反向代理验证码请求后,图片无法显示

叶大侠 发布于 2018/04/30 21:46
阅读 1K+
收藏 2

问题描述:

在没有使用Nginx转发的的情况下是正常可以获得的。在服务端通过端口调用也是可以获得正常返回数据。

经过Nginx之后,响应码(200)和Http Reponse 的头部信息正常返回,但是图片数据丢失了。

带域名的请求:

直接通过端口的请求:

对 nginx 不是很熟悉,这是怎么回事呢,如何才能让图片验证码请求正常工作?请大牛指导。

(附以下信息进行参考)

验证码生成框架:

com.google.code.kaptcha

nginx配置:

upstream webAdmin {
    server 127.0.0.1:8087;
}

server {
    listen 443 ssl;
    server_name  admin.hhh.com;
    location / {
        proxy_pass  http://webAdmin;
    }
}

server {
    listen 80;
    server_name admin.hhh.com;

    location ^~ /.well-known/acme-challenge/ {
        alias /apps/challenges/;
        try_files $uri =404;
    }

    location / {
        proxy_pass  http://webAdmin;
    }
}

 

加载中
0
叶大侠
叶大侠

查了下nginx的错误日志,发现这个:

upstream sent invalid chunked response while reading upstream, client

关键字死活没找到原因,姿势用错了。。

加上这个就解决了:参考答案

proxy_http_version 1.1
0
开源中国首席弟子
开源中国首席弟子

多半是权限问题,nginx用root用户试试

返回顶部
顶部