无法访问另一个 nginx 反向代理后面的 nginx 网络服务器

无法访问另一个 nginx 反向代理后面的 nginx 网络服务器

我有两台虚拟机,第一台(vm-1)运行 nginx 作为反向代理,配置如下:

server {
  listen 80;
  server_name example.com;
  return 301 https://example.com$request_uri;
}
server {
  server_name example.com;
  location /app1 {
    proxy_pass http://ip-vm-2:8080;
  }
  location /app2 {
    proxy_pass http://ip-vm-2:80;
  }
  listen 443 ssl;
  ssl_certificate ....
}

对于第二个虚拟机(vm-2),我在端口 8080 上有 app1(一个独立的 jar),它工作正常,我可以从https://example.com/app1

对于 app2,我安装了 nginx,并将网站复制到 /var/www/html,但我可以从http://ip-vm-2,我不工作https://example.com/app2,这就是我想要的。

我不知道反向代理中的配置到底有什么问题。

答案1

我还没有尝试过使用虚拟机,但这似乎合乎逻辑。

VM1 nginx 配置 server { listen 80; server_name example.com; return 301 https://example.com$request_uri; } server { server_name example.com; location /app1 { proxy_pass http://ip-vm-2:8080; } location /app2 { proxy_pass http://ip-vm-2; } listen 443 ssl; ssl_certificate .... }

VM2 nginx 配置

server { listen 80; server_name ip-vm-2; location / { root /var/www/html; try_files $uri $uri/ /index.html ; } }

如果有效请告诉我。

相关内容