V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
MMMMMMMMMMMMMMMM
V2EX  ›  NGINX

gzip 开了, Chrome,FF 无效,但是 Curl 有效,奇怪了

  •  
  •   MMMMMMMMMMMMMMMM · 2019-08-02 17:19:36 +08:00 · 2808 次点击
    这是一个创建于 1721 天前的主题,其中的信息可能已经有所发展或是发生改变。


    在 chrome ff 里把请求 copy as curl 跑一下就有 gzip 了

    浏览器我还重装了下,也不行,没开杀毒软件,裸奔,也没有任何系统拦截提示

    有人也遇到过么

    配置把每一项都开关试了下


    gzip on;
    gzip_vary on;
    gzip_http_version 1.1;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_comp_level 2;
    gzip_types text/plain text/css text/xml application/json application/javascript application/rss+xml application/atom+xml image/svg+xml;

    配置基本是这个工具
    https://nginxconfig.io/?0.php=false&0.index=index.html&0.fallback_html

    自动生成的
    11 条回复    2019-10-02 22:18:30 +08:00
    arrow8899
        1
    arrow8899  
       2019-08-02 17:45:52 +08:00
    发一下 nginx 完整的配置和 nginx.log 你看看呢,浏览器和 curl 的请求肯定不一样的,看截图 curl 发的是 head 请求
    unicloud
        2
    unicloud  
       2019-08-02 17:48:34 +08:00 via iPhone
    确定开启 gzip 了? www.dute.org/gzip 检测下
    MMMMMMMMMMMMMMMM
        3
    MMMMMMMMMMMMMMMM  
    OP
       2019-08-02 18:13:56 +08:00
    @arrow8899

    accesslog:

    Chrome 访问 :
    [02/Aug/2019:17:59:34 +0800] "GET / HTTP/1.1" 200 1769 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) Ap
    pleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.80 Safari/537.36"

    Firefox 访问:
    [02/Aug/2019:18:00:33 +0800] "GET / HTTP/1.1" 200 1769 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv
    :68.0) Gecko/20100101 Firefox/68.0"

    Chrome 开发工具 url 点右键 "Copy as Curl (cmd)":
    [02/Aug/2019:18:10:19 +0800] "GET / HTTP/2.0" 200 1757 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) Ap
    pleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.80 Safari/537.36"

    errorlog 无新增项

    client 端我对比了下 request header 都是一样的

    服务端 nginx 看详细请求头好像还配点东西,我再查查
    MMMMMMMMMMMMMMMM
        4
    MMMMMMMMMMMMMMMM  
    OP
       2019-08-02 18:15:35 +08:00
    @unicloud



    emmmm....他说我开了,我怎么有点不信,为什么我这就没 content-encoding 头...
    iccfish
        5
    iccfish  
       2019-08-02 18:19:11 +08:00
    中间有其它的抓包工具吗
    MMMMMMMMMMMMMMMM
        6
    MMMMMMMMMMMMMMMM  
    OP
       2019-08-02 18:19:58 +08:00
    @arrow8899

    完整配置有点长,https://nginxconfig.io/?0.php=false&0.index=index.html&0.fallback_html 就这个 进去默认的就是的 域名改过了

    然后只改动 gzip 部分
    jinliming2
        7
    jinliming2  
       2019-08-02 18:24:23 +08:00 via iPhone
    看着浏览器里走的是 HTTP/1.1,curl 里是 HTTP/2,不知道有没有关系?
    MMMMMMMMMMMMMMMM
        8
    MMMMMMMMMMMMMMMM  
    OP
       2019-08-02 18:24:27 +08:00
    @iccfish SwitchyOmega postman 都禁用了 用无痕纯净模式开也不行

    我换台电脑试试看
    MMMMMMMMMMMMMMMM
        9
    MMMMMMMMMMMMMMMM  
    OP
       2019-08-02 18:42:05 +08:00
    我把我的吃灰 mac 拿出来试了下,chrome 很久没更新了的,竟然就有 gzip 了



    暂时处于 it works,but i don't know why it works 阶段。。。
    g972282
        10
    g972282  
       2019-08-02 18:47:05 +08:00 via Android
    两个浏览器里响应都是 chunked encoding 但是 curl 不是,估计跟这个有关。
    我倒是建议可以中间加一层 Fiddler 抓包来对比请求响应,编辑重发也挺方便。
    ahmcsxcc
        11
    ahmcsxcc  
       2019-10-02 22:18:30 +08:00
    我也遇到这种问题了
    你解决了吗
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1366 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 23:44 · PVG 07:44 · LAX 16:44 · JFK 19:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.