小编lib*_*rae的帖子

如何处理应保护为 https 的网站中的混合内容?

我正在服务器 A 上建立一个网站(已注册域名),用于人们创建和运行他们的“应用程序”。
这些“应用程序”实际上是运行在服务器 B 上的 docker 容器,在容器中,有一个可以直接访问的小型 Web 应用程序,例如:

http://IP_ADDR_OF_SERVER_B:PORT
Run Code Online (Sandbox Code Playgroud)

PORT 是一个随机的大数字,它映射到 docker 容器。现在我可以使 SSL 证书在服务器 A 上工作,以便通过访问它可以正常工作:

https://DOMAIN_NAME_OF_SERVER_A
Run Code Online (Sandbox Code Playgroud)

问题是,我通过访问上面的“http”将“应用程序”包含在 iframe 中,因此我的浏览器(Chrome)拒绝打开它并报告错误为:

Mixed Content: The page at 'https://DOMAIN_NAME_OF_SERVER_A/xxx' was loaded over HTTPS, but requested an insecure resource 'http://IP_ADDR_OF_SERVER_B:PORT/xxx'. This request has been blocked; the content must be served over HTTPS.

那么,我应该如何处理这样的问题呢?
我是一个完整的新手,如果你能分享一些关于如何建立一个健康的 https 网站同时以适当的方式解决此类问题的知识,我将不胜感激。


补充说明

好的,我想我只是抛出了问题的大纲,这里有更多细节。

我看到使用 https 提供 iframe 请求是完整且直接的,那么它就不会再让我感到困惑了。

然而问题是,由于所有“应用程序”都是动态创建/删除的,看来我需要为每个应用程序准备许多证书。

自签名证书是否可以在不被浏览器阻止或投诉的情况下工作?或者我是否有办法使用一个 SSL 证书为所有“应用程序”提供服务?


软件环境

服务器 A:运行 node.js 网站,侦听端口 5000 并使用 Nginx proxy_pass 提供服务。

server {
    listen …
Run Code Online (Sandbox Code Playgroud)

https certificate web server

6
推荐指数
2
解决办法
2万
查看次数

标签 统计

certificate ×1

https ×1

server ×1

web ×1