哈哈,不行了,我编不下去了,这一段其实是骗人的,wlwsyntaxhighlighter的版本太老了,我下载的是SyntaxHighlighter库的最新版本,所以根本没法达到效果,这里只是告诉大家一个学习和工作思路,如何充分发挥想象,利用已经搭建好的CDN服务为自己服务。
已经完成了吗?别着急,还有点额外的细节值得关注
四、关键点和问题处理
在整个方案的实践过程中,也走过弯路遇到过一些问题,主要有如下几个
1、不同浏览器对字体文件的识别
不同厂家的CDN服务似乎对于HTTP头的处理不太一样,而HTTP头的处理又会影响浏览器对资源文件的识别和加载,虽然其中原理我并不专业,但例如谷歌浏览器的最新版本或者手机上的Chromium内核的浏览器对某些前端框架中的字体文件的加载就有怪癖,需要设置服务器的某些跨域属性(腾讯云CDN刚上线时,由于无法设置HTTP头,就无法解决这个问题,现在不知道解决没),虽然说不出详细的门道来,不过经过搜索,也找到了解决办法,例如
在阿里云里面的对应解决办法就是来到CDN管理菜单中
添加HTTP头,参数为access-control-allow-origin,取值为*
这样就解决了问题
2、SSL证书密钥的处理
证书这玩意还真是复杂,完全日不懂,之前在进行支付宝退款开发时就头疼过一次,而阿里云官方提供的帮助只能找到如下:
证书格式说明各大证书公司颁发的证书格式又有微小的差别,在本次实践中,我先是花了2个多小时研究证书的公钥和私钥,然后又花了1个小时转化格式,都没能成功,最后求助于淘宝证书卖家,1分钟就给我转化好了适合阿里云的格式。。这也是无语了,所以在这里劝大家,术业有专攻,如果弄不懂,及时求助,如果有时间,那就对整个证书体系的所有技术知识都了解一遍,也是不错的,如果有好心人,可以写一篇文章专门讲解一下
3、阿里云OSS对HTTPS的支持
在实践的过程中发现,阿里云OSS无法内置直接支持HTTPS的访问方式,而官方的回答如下: