首页 热点资讯 义务教育 高等教育 出国留学 考研考公

已经部署的程序,如何正确的加上CDN

发布网友 发布时间:2022-04-22 13:16

我来回答

1个回答

热心网友 时间:2023-10-17 18:59

这种情况我建议你不要hardcode这些路径了,所以最好配合使用一些预处理工具。对于css可以选择less或者sass,对于后端渲染的html则将hardcode的url替换成对应模板系统里的变量。
比如之前css里面写的是:background: url("mystic.com/images/background.jpg") repeat-x fixed 0 0;
现在使用sass可以改成background: url(#{$assert_root}/images/background.jpg) repeat-x fixed 0 0;, 其中assert_root是一个sass变量,它的值根据你当前build是针对DEV还是Prod不同而相应的指向你的DEV机器或者CDN机器。
后端的话比如说之前是<img src="mystic.com/images/bar.jpg" height="42" width="42">
现在用JSP则变成了<img src="${assert_root}/images/bar.jpg"/>,原理同上
我例子里的技术不一定适合你,但大意也就是通过变量的方式解耦你对资源地址的绑定。根据你自己的技术栈,你可以选择类似的技术(框架、库)打到类似的效果。
这样你的开发、发布流程将会是:
开发时:配置dev server使assert_root指向本地(一次性修改),每次修改了sass代码时需要重新编译一次(可以用gulp之类的工具自动化这个过程)。所以几乎不需要什么额外的劳动。。
发布时:配置Prod server使assert_root指向CDN(当然,也是一次性),编译一次sass,然后发布代码到server

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com