嘟嘟社区

nginx 反代替换里面接口网址不起作用。


sub_filter    还好像一直不起作用。
server {
     listen     80;
    server_name   ******.com;
location / {
    proxy_pass https://h5admin.***.com;
    proxy_set_header Host h5admin.***.com;
    add_header Access-Control-Allow-Methods *;
    sub_filter   ‘https://adminapi.***.com’ ‘http://***.com/Api’;
sub_filter_once off;
        sub_filter_types text/html text/css application/javascript application/json;
        proxy_set_header Accept-Encoding "";

proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    #proxy_set_header Connection keep-alive;
    proxy_set_header Connection "upgrade";
    proxy_cache_bypass $http_upgrade;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-Proto $scheme;
    proxy_buffering off;
    proxy_read_timeout 100s;
    #try_files $uri $uri/ /web/evaluationapp/index.html;
  }
    location ^~ /.well-known/acme-challenge/ {
        default_type "text/plain";
        allow all;
        root /var/ssl;
   }
}

你是不是用的中文”?
它们什么都知道,它们本就是故意的
我什么也做不了

heihai 发表于 2024-10-23 17:02
你是不是用的中文”?

确实,不过我改了应该双引号,还是没替换呢。" "

sub_filter无法替换非plain text的内容。也就是说如果你的内容压缩过(例如gz),sub_filter不起作用。
经典抽象缩进

çava 发表于 2024-10-23 17:21
sub_filter无法替换非plain text的内容。也就是说如果你的内容压缩过(例如gz),sub_filter不起作用。 …

但他不是有 proxy_set_header Accept-Encoding "";么

çava 发表于 2024-10-23 17:21
sub_filter无法替换非plain text的内容。也就是说如果你的内容压缩过(例如gz),sub_filter不起作用。 …

浏览器访问我看默认是有gzip,有其他办法么。

heihai 发表于 2024-10-23 17:26
但他不是有 proxy_set_header Accept-Encoding "";么

还有啥办法么,反代网页主业是可以,但是他api是另外的网址。

斌斌 发表于 2024-10-23 17:29
还有啥办法么,反代网页主业是可以,但是他api是另外的网址。

他应该不是直接在请求里调用完整的https api地址吧,你在请求里搜搜,应该都是拼接的