使用内置的MVC4捆绑器,如何将我的CDN URL添加到它生成的链接标记中?我已经设置了Amazon Cloudfront,以便在首次请求时从我的网络服务器中提取资产.所以当我定义一个这样的包时:
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/reset.css",
"~/Content/960_24_col.css",
"~/Content/Site.css"
));
Run Code Online (Sandbox Code Playgroud)
部署后,我可以这样引用它:
http://[cloundfrontid].cloudfront.net/Content/css?v=muhFMZ4thy_XV3dMI2kPt-8Rljm5PNW0tHeDkvenT0g1
Run Code Online (Sandbox Code Playgroud)
现在我只需要将Bundler生成的链接更改为相对于指向我的CDN的绝对链接.
<link href="[INSERT_CDN_URL_HERE]/Content/css?v=muhFMZ4thy_XV3dMI2kPt-8Rljm5PNW0tHeDkvenT0g1" rel="stylesheet"/>
Run Code Online (Sandbox Code Playgroud)
我认为可以使用IBundleTransform重写路径,但我找不到任何这方面的例子.
注意:为了清楚起见,我知道您可以为捆绑包指定CDN链接,但只有在捆绑包可以被静态链接替换时才有效.