ASP.Net MVC 5 - 使用捆绑的JavaScript和CSS部署单独的CDN站点

时间:2018-01-08 06:23:55

标签: asp.net-mvc asp.net-mvc-5 bundle cdn

我想知道是否可以部署两个ASP.Net MVC站点来执行以下操作。

  1. 主要网站:包含所有控制器和视图
  2. CDN网站:包含所有JavaScript和CSS(第一个网站使用的捆绑JS和CSS)
  3. 我期待在解决方案中你会有两个网站项目。我认为在调试模式下这可以正常工作,因为包名称是一致的。

    但是,在没有以调试模式运行的生产环境中(在web.config中关闭),文件名的查询参数会有所不同,例如: http://www.test-domain.com/bundles/ bootstrap?v = 2Fz3B0iizV2NnnamQFrx-NbYJNTFeBJ2GM05SilbtQU1 (其中 bootstrap 是捆绑包的名称)。

    有谁知道如何从主网站的Razor视图中引用CDN网站中的捆绑包?

    答案 我意识到您不必包含bundle name

    的查询参数

1 个答案:

答案 0 :(得分:1)

如果您的MVC 5项目在本地计算机上以发布模式运行良好,它也适用于生产。

生产中需要考虑的更多因素是:

  • 确保 CORS 已启用,因为您有js&不同站点的css资源(如果域名不同)

  • 确保您在MVC5网站上引用托管视图&您在 CDN

  • 中创建的后端逻辑具有正确的引用
  • 两台主机上都允许使用防火墙/托管端口进行通信。

希望这有帮助。

附加到URL末尾的BTW查询字符串只是确保服务器不同地为每个请求提供服务而不是缓存,不会影响您的应用程序。