当前位置: 首页 > 知识库问答 >
问题:

NGINX反向代理和招摇过市用户界面。html

况博容
2023-03-14

我一直试图让斯威格在NGINX反向代理后工作,但我就是做不好。我的服务在docker容器中运行,我希望使用以下示例URL访问它们:

我的服务:

http://service-host.example.com/my-service1



昂首阔步:

http://service-host.example.com/my-service1/api


我的嵌套位置块如下所示:

location /my-service1 {
  resolver 127.0.0.11 valid=30s;
  set $upstream my-host.example.com;
  proxy_pass http://$upstream/home;

      location ~ /api {
            resolver 127.0.0.11 valid=30s;
            set $upstream my-host.example.com;
            proxy_pass http://$upstream/swagger-ui.html;
      }
      location ~ /webjars {
            resolver 127.0.0.11 valid=30s;
            set $upstream my-host.example.com;
            proxy_pass http://$upstream/;
      }
      location ~ /v2 {
            resolver 127.0.0.11 valid=30s;
            set $upstream my-host.example.com;
            proxy_pass http://$upstream/;
      }
      location ~ /swagger-resources {
            resolver 127.0.0.11 valid=30s;
            set $upstream my-host.example.com;
            proxy_pass http://$upstream/;
      }
}

我的NGINX日志如下所示:

GET /my-service1/api/ HTTP/2.0" 200
GET /my-service1/api/webjars/springfox-swagger-ui/springfox.css?v=2.9.2 HTTP/2.0" 200
GET /my-service1/api/webjars/springfox-swagger-ui/swagger-ui-bundle.js?v=2.9.2 HTTP/2.0" 200
GET /my-service1/api/webjars/springfox-swagger-ui/swagger-ui.css?v=2.9.2 HTTP/2.0" 200
GET /my-service1/api/webjars/springfox-swagger-ui/springfox.js?v=2.9.2 HTTP/2.0" 200
GET /my-service1/api/webjars/springfox-swagger-ui/swagger-ui-standalone-preset.js?v=2.9.2 HTTP/2.0" 200

直接测试这一点,而无需通过NGINX,该过程将继续进行,并获得/v2/api和/swagger资源。在这之前,使用反向代理会被卡住。

对此有何建议?

编辑:这里是一个NGINX日志,当不尝试反向代理,但直接转到http://myservice.example.com/swagger-ui.html在那里它可以完美地工作!

myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:44 +0000] "GET /swagger-ui.html HTTP/2.0" 200 3318 "-" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:44 +0000] "GET /webjars/springfox-swagger-ui/springfox.css?v=2.9.2 HTTP/2.0" 200 2894 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:44 +0000] "GET /webjars/springfox-swagger-ui/swagger-ui.css?v=2.9.2 HTTP/2.0" 200 154488 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:45 +0000] "GET /webjars/springfox-swagger-ui/swagger-ui-bundle.js?v=2.9.2 HTTP/2.0" 200 1448844 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:45 +0000] "GET /webjars/springfox-swagger-ui/springfox.js?v=2.9.2 HTTP/2.0" 200 96207 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:45 +0000] "GET /webjars/springfox-swagger-ui/swagger-ui-standalone-preset.js?v=2.9.2 HTTP/2.0" 200 440850 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:46 +0000] "GET /swagger-resources/configuration/ui HTTP/2.0" 200 450 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:46 +0000] "GET /swagger-resources/configuration/security HTTP/2.0" 200 2 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:46 +0000] "GET /swagger-resources HTTP/2.0" 200 90 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"
myservice.example.com 192.168.1.30 - - [12/Feb/2019:09:59:46 +0000] "GET /v2/api-docs HTTP/2.0" 200 8387 "https://myservice.example.com/swagger-ui.html" "Mozilla/5.0 (Windows NT 6.1; rv:60.0) Gecko/20100101 Firefox/60.0"

共有1个答案

锺离卓
2023-03-14

使用此配置在我的服务器(NetCore)中工作

    location / {
        #root   /srv/ftp;
        #index  index.html index.htm;
        proxy_pass         http://localhost:5000;
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection keep-alive;
        proxy_set_header   Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Proto $scheme;
    }
 类似资料:
  • 我有一个软件,它有两个不同的任务: 假设一个应用任务 一个Restapi任务 基本上下文{host}/application/…上的应用程序任务。。。使用Springboot初始化,如下所示: 包含swagger的restapi任务配置如下(我认为此时不需要restapiendpoint): 因此,此配置在我的本地计算机上运行良好。问题是,如果此配置在反向代理之后运行,我将无法访问swagger

  • 主要内容:1. 代理服务器介绍,2. 将请求传递给代理的服务器,3. 传递请求标头,4. 配置缓冲区,5. 选择传出IP地址本文介绍代理服务器的基本配置。 您将学习如何通过不同协议将NGINX请求传递给代理的服务器,修改发送到代理服务器的客户端请求标头,以及配置来自代理服务器的响应缓冲。 代理服务器的基本配置目录 代理服务器介绍 将请求传递给代理的服务器 传递请求标头 配置缓冲区 选择传出IP地址 1. 代理服务器介绍 代理通常用于在多个服务器之间分配负载,无缝地显示来自不同网站的内容,或者通过

  • Nginx 是一个高性能的 HTTP 和反向代理服务器,代码完全用 C 实现,基于它的高性能以及诸多优点,我们可以把它设置为 hyperf 的前置服务器,实现负载均衡或 HTTPS 前置服务器等。 配置 Http 代理 # 至少需要一个 Hyperf 节点,多个配置多行 upstream hyperf { # Hyperf HTTP Server 的 IP 及 端口 server

  • 我通过swagger编辑器手动创建了YAML文件(分别为JSON文件)。 现在我想将swagger编辑器工具中很酷的自动生成页面嵌入到我的网站中,以便用户可以实时阅读和测试它(通过“尝试此操作”按钮)我的API。 我不希望swagger为我生成任何代码,也不需要它自动更新文档(YAML或任何东西)。只要需要,我就会手动更新静态YAML/JSON文件。斯威格支持这种功能吗?它是否与swagger编辑

  • 我的pom.xml 招摇过市配置 服务器日志 它说映射: 但这些都不起作用(404): 如果我使用sping-fox较低版本,那么我将在我的日志中得到它已映射{[/v2/api-docs}],方法=[GET]。但是,我看不到在那里生成的任何json。

  • 当我打开它时,所有操作都显示为折叠,并且我希望它在默认情况下展开。 有什么我需要改变的属性来实现它吗? 这是我的霸气豆: