当前位置: 首页 > article >正文

在https的网站里访问http的静态资源

场景:出于安全考虑,项目的前端访问地址由原来的http变为了https的地址。导致项目中的一些资源或者接口(原本在http的第三方服务器上)无法正常访问了。

解决问题思路:

1、联系服务提供商,让他们将资源换成https的。结果提供商不配合。。。。

2、自己配置代理。将资源请求发送到自己的https的前端服务,通过代理转发到http的静态资源服务器上,然后将拿到的资源以https的形式返给浏览器。

具体步骤:

A 拿到后端返回的静态资源地址后,不要直接请求,也不会请求成功,因为你前端是https的。

B 前端处理请求地址,将拿到的地址去掉协议、域名、端口号后,进行请求,这样会将请求发送到你前端页面所在的服务器。改完的地址类似这样  “/TDT/SdPubMap?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=sdimg2017&STYLE=default&TILEMATRIXSET=img2017&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&FORMAT=image%2png”

C 进行代理配置,给改完的地址随便加一个“头”,类似"/ditu",改完之后就变成了这样,

/ditu/TDT/SdPubMap?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=sdimg2017&STYLE=default&TILEMATRIXSET=img2017&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&FORMAT=image%2png

在开发环境下,配置一下node代理服务器,如下:

"/ditu": {//地图服务
        target: `http://XXXXXXXXXXX`, 

        changeOrigin: true,

        pathRewrite: {
          "^/ditu": "",
        },
      },

部署到生产环境,nginx进行代理配置,如下

经过以上步骤,你就成功实现了从https的网站中访问到了http的静态资源。


http://www.kler.cn/a/573384.html

相关文章:

  • AI数字人源码开发---SaaS化源码部署+PC+小程序一体化
  • 微信小程序投票系统的构建与实现
  • 200W数据去重入库的几种方法及优缺点
  • 云原生 DB 技术将取代K8S为基础云数据库服务-- 2025年云数据库专栏(一)
  • formdata 传list
  • c++ 接口/多态
  • 拉货搬家小程序开发中保障用户隐私和数据安全的方法
  • IntelliJ IDEA集成MarsCode AI
  • CentOS 8.2 更新源
  • 谷歌浏览器插件开发避免跨域以及流式数据输出
  • Oracle常用分析诊断工具(9)——AWR
  • OpenAI 最后一代非推理模型:OpenAI 发布 GPT-4.5预览版
  • 多线程的使用、同步和异步、synchronized、线程安全的单例模式、死锁、解决死锁
  • Windows系统编程(八)线程同步
  • 系统架构设计师—软件工程基础篇—系统分析与设计
  • FastGPT 源码:utils.ts 中的 RRF 实现
  • C++学习之路,从0到精通的征途:入门基础
  • yum修改阿里云
  • C#—csv文件格式操作实例【在winform表格中操作csv】
  • 【文献阅读】Efficient Prompting Methods for Large Language Models: A Survey