V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
如果你希望学习 CDN 相关知识,那么建议你可以遍历以下软件的说明文档。
NGINX
cURL
mscststs
V2EX  ›  CDN

迫于 BootCDN 的不稳定,分享一个自己的备用 CDN 方案

  •  
  •   mscststs · 2019-03-22 15:25:20 +08:00 · 3685 次点击
    这是一个创建于 2098 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今日欣闻 BootCDN 又炸了,群友有个博客没法打开,于是瞅了一眼,发现 BootCDN 只是做了一个 301 重定向,重定向到了 cdnjs.com 的首页( http),所以根本没能弥补任何的问题。

    言归正传,其实实现方法很简单,以下代码都在 head 引入

    
        <!-- axios -->
        <script src="https://cdn.bootcss.com/axios/0.19.0-beta.1/axios.min.js"></script>
        <!-- Vue -->
        <script src="https://cdn.bootcss.com/vue/2.5.17/vue.min.js"></script>
        <!-- VueRouter -->
        <script src="https://cdn.bootcss.com/vue-router/3.0.2/vue-router.min.js"></script>
    	
        <script>
          /* Catch CDN Failed  */
          /* Vue */
          window.Vue || document.write('<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.min.js"><\/script>')
          /* axios */
          window.axios || document.write('<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/axios.min.js"><\/script>')
          /* VueRouter */
          window.VueRouter || document.write('<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue-router.min.js"><\/script>')
          
        </script>
    

    CSS 的话只能用 onerror 事件然后自己插 link 标签来解决

    当然了,各位先忽略版本不一致的问题。

    实际上这个方法是有效的,毕竟我自己的几个项目就用的这个方法,今天能够正常打开。

    某种意义上最好的办法当然是自建 CDN 或者找一个比较靠谱的 CDN。

    3 条回复    2019-04-10 21:23:02 +08:00
    cydian
        1
    cydian  
       2019-03-24 01:28:01 +08:00 via Android
    我没搞懂。
    你既然有备用的,为什么直接用备用的?
    mscststs
        2
    mscststs  
    OP
       2019-03-24 02:24:34 +08:00 via Android
    @cydian 速度……以及一些其他原因,毕竟 jsdelivr 也有过黑历史什么的。

    至少只是提供一个思路,换成 360、cloudflare 也是一样的
    kennylam777
        3
    kennylam777  
       2019-04-10 21:23:02 +08:00
    這點事就自建 CDN 也太誇張了吧, 自己 host 就好, 加 Cache-Control 控制 client side 的緩存時間, 甚或是在 server side 弄一份 cache, 或者在自己網站的 CDN 留一份也可以, 起碼是共同進退

    不過在當前的網絡環境, 有備無患
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1004 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 21:13 · PVG 05:13 · LAX 13:13 · JFK 16:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.