Nginx空Accept-Encoding导致超时

yquaqz18  于 2024-01-06  发布在  Nginx
关注(0)|答案(1)|浏览(188)

当我想在Nginx反向代理中替换字符串时,我使用

  1. sub_filter 'https://upstream.com' 'http://www.localhost:8080';
  2. sub_filter_once off;

字符串
但它不工作(因为它的gzipped),所以我添加

  1. proxy_set_header Accept-Encoding "";


但随后请求超时(网关超时)。我想知道这是怎么可能的,我试图做一个GET到upstream.com与 Postman 与Accept-Encoding头设置为空,它工作正常,所以这是一个问题,对我来说。
我的配置看起来像:

  1. worker_processes 1;
  2. events {
  3. worker_connections 1024;
  4. }
  5. http {
  6. server {
  7. listen 8080;
  8. server_name localhost;
  9. location / {
  10. proxy_pass https://www.upstream.com;
  11. proxy_hide_header 'x-frame-options';
  12. proxy_cookie_domain ~^(.*)$ "http://www.localhost:8080";
  13. proxy_set_header X-Real-IP $remote_addr;
  14. proxy_cookie_path / "/; secure; HttpOnly; SameSite=none";
  15. sub_filter 'https://www.upstream.com' 'http://www.localhost:8080';
  16. sub_filter_once off;
  17. sub_filter_types text/html;
  18. proxy_set_header Accept-Encoding "";
  19. }
  20. }
  21. }


PS:upstream.com只是一个例子,我使用另一个网址。

njthzxwz

njthzxwz1#

尝试使用gunzip模块。更多信息here .

  1. http {
  2. server {
  3. listen 8080;
  4. server_name localhost;
  5. location / {
  6. proxy_pass https://www.upstream.com;
  7. proxy_hide_header 'x-frame-options';
  8. proxy_cookie_domain ~^(.*)$ "http://www.localhost:8080";
  9. proxy_set_header X-Real-IP $remote_addr;
  10. proxy_cookie_path / "/; secure; HttpOnly; SameSite=none";
  11. sub_filter 'https://www.upstream.com' 'http://www.localhost:8080';
  12. sub_filter_once off;
  13. sub_filter_types text/html;
  14. proxy_set_header Accept-Encoding "gzip";
  15. gunzip on;
  16. }
  17. }
  18. }

字符串

展开查看全部

相关问题