如何从另一个不安全的网站反向代理资产?

如何从另一个不安全的网站反向代理资产?

我遇到了这种情况。存储此 nginx 配置的当前 VM 具有有效的 SSL 证书。此 VM 内部是app1端口 80 中提供的主要应用程序。在另一个端口 1234 上,另一个服务在 docker 容器中提供。我设法像这样app2反向代理app2

       location /app2/ {
           proxy_pass          http://127.0.0.1:1234/;

           proxy_http_version 1.1;
           proxy_set_header Upgrade $http_upgrade;
           proxy_set_header Connection "upgrade";
           proxy_read_timeout 600s;

           proxy_redirect    http://127.0.0.1:3888/ http://127.0.0.1:8080/vnc/;
           proxy_set_header  Host             $http_host;
           proxy_set_header  X-Real-IP        $remote_addr;
           proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
           proxy_set_header  X-Forwarded-Protocol $scheme;
       }

app2可以通过以下方式访问https://mywebsite.com/app2

现在我在另一个虚拟机中有一个 Laravel 应用程序app3(不在 Docker 容器中)。我执行了相同的过程。当我转到https://websited.com/app3它只加载 html 部分,而不加载 javascript 和 css。Mozilla 控制台上的错误显示为

Blocked loading mixed active content “http://mywebsite.com/css/style.css”

据我了解,它应该查看存储的 VM 的资源app3。如何让 nginx 加载app3js 和 css 等资源?

答案1

您需要在 Laravel 应用程序中设置根 URL,以便 Laravel 为其引用的资源生成正确的 URL。

https://stackoverflow.com/questions/35304448/laravel-change-base-url有关于如何做的信息。

相关内容