avatar

十六小站

欢迎来到我的个人主页! 期待与您分享我的经验与故事,一起探索技术的无穷可能!

  • 首页
  • NAS专题
  • 关于
Home HTML中的HTTP升级HTTPS请求
文章

HTML中的HTTP升级HTTPS请求

Posted 2024-06-27 Updated 2024-10- 19
By 十六
2~3 min read

前一段时间在做onlyoffice的集成时发现,做了https代理后会出现某一个内部请求一直是http,无法修改为https,如果要修改就需要跟踪源码修改编译,这样太耗时而时间又紧,查阅资料发现可以强制浏览器中的所有http请求升级为https。

添加mate升级请求

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />

动态引入

添加后测试所有的http都升级成了https请求,但是问题又来了 ,我使用http请求来访问 ,未做https的配置 ,则不能正常使用了 ,为了能兼容两种场景 ,引入js动态引入mate数据,代码如下:

<script>

    // 根据URL的不同,动态创建meta标签
    function loadMetaTags() {
        var meta = document.createElement('meta');
        if (window.location.protocol === 'https:') {
            meta.setAttribute('http-equiv', 'Content-Security-Policy');
            meta.setAttribute('content', 'upgrade-insecure-requests');
            document.head.appendChild(meta);
        }
    }
    // 页面加载完成后执行
    window.onload = loadMetaTags;
</script>

修改后测试 ,http和https都可以正常访问了 。

License:  CC BY 4.0
Share

Further Reading

OLDER

node版本管理工具

NEWER

ACME证书自动续期

Recently Updated

  • Onlyoffice编译
  • K6+Playwright实现并发测试
  • 简单规则引擎
  • 在WEB中子线程可以访问Request上下文
  • onlyoffice配置

Trending Tags

Java Docker 前端 中间件 数据库 群晖 unraid

Contents

©2025 十六小站. 陕ICP备2023009742号-2