首页 > 解决方案 > 重写反向代理的复杂路径

问题描述

目前正在尝试代理到另一个端口以提供闪亮的应用程序。遵循教程并根据 nginx 文档建议进行调整以返回。有用..

    location /shiny/ {
      rewrite ^/shiny/(.*)$ /$1 break;
      proxy_pass http://localhost:3838;
      proxy_redirect / $scheme://$remote_addr/shiny/;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "Upgrade";
      proxy_set_header    Host $remote_addr;
      proxy_read_timeout 20d;
      proxy_buffering off;
      return 301 $scheme://$remote_addr/shiny/;
    }

但如果我尝试像下面这样更复杂的路径,它就会分崩离析。我错过了什么?我已经尝试确保我的正则表达式有效并且看起来有效。

    location /services/1234/service/shiny/ {
      rewrite ^/services/1234/service/shiny/(.*)$ /$1 break;
      proxy_pass http://localhost:3838;
      proxy_redirect / $scheme://$remote_addr/services/1234/service/shiny/;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "Upgrade";
      proxy_set_header    Host $remote_addr;
      proxy_read_timeout 20d;
      proxy_buffering off;
      return 301 $scheme://$remote_addr/services/1234/service/shiny/;
    }

标签: rnginxshinynginx-reverse-proxynginx-config

解决方案


推荐阅读