【问题标题】:Where should common static resources (images, js, css, etc) go in DotNetNuke?常见的静态资源(图像、js、css 等)在 DotNetNuke 中应该放在哪里?
【发布时间】:2010-05-04 13:32:52
【问题描述】:

在 DotNetNuke 5.x 安装中是否有推荐的存储静态资源(图像、css、js 等)的位置?

有 /images 和 /js 文件夹以及包含资源的 /Resources 文件夹。由于 MicrosoftAjax.js 位于多个位置(但可能是不同的版本?),因此似乎存在一些重叠。我还可以将资源放在 /DesktopModule/ModuleX 位置。

有谁知道使用这些文件夹是否有区别?

我有点喜欢将所有静态资源都放在一个公共文件夹 (/Resources) 下的想法,这样我就可以在一个地方设置缓存规则标头、权限等。

是否有人使用单独的图像服务器来提供 DotNetNuke 静态内容? Pros and Cons of a separate image server (e.g. images.mydomain.com)?

【问题讨论】:

    标签: image dotnetnuke dotnetnuke-5 static-resource


    【解决方案1】:

    如果您拥有整个 DNN 安装,那么将所有资源整合到一个位置(无论是 DNN 使用的 Resources 文件夹,还是 DNN 不知道的其他文件夹)当然是有意义的。如果您正在开发一个将安装到您不完全拥有的站点上的模块,那么周到的做法是将您的资源限制在您的模块的 DesktopModules 文件夹中。

    关于 DNN 文件夹需要考虑的一些事项:

    • 如果您在某个模块的文件夹下有内容,卸载该模块将使您可以选择删除该内容。这可以帮助您保持干净和有条理,或者如果您有多个模块定义共享相同的文件,这可能会很危险......(更危险的可能是卸载 SQL 脚本;确保您不会意外卸载一个附加了卸载脚本的模块)
    • 您可以使用 DNN 文件管理器来上传/删除/重命名 Portals 目录中的文件,因此如果站点管理员应该能够控制这些文件,那么将文件放在那里可能是有意义的
    • 将内容放在模块文件夹之外会使链接变得稍微困难​​一些(尤其是如果它位于特定于门户的文件夹中,即您每次都必须向 PortalSettings 对象询问路径)
    • 将资源保留在模块文件夹之外的情况并不常见,因此如果您将经验丰富的 DNN 开发人员带入项目中,可能会造成混乱

    【讨论】:

    • 我们确实拥有整个 DNN 安装,并且正在开发只有我们将使用的模块(不分发、销售等)。其中许多资源将被多个模块使用。我将使用 /Resources DNN 文件夹。谢谢!
    【解决方案2】:

    对于皮肤和容器,您可以使用 Portals 目录下的它们自己的文件夹。正如bdukes 所说,这样站点管理员可以在 DNN 中控制它们。

    对于模块,我使用了模块的文件夹和 module.css 作为可以被皮肤或容器 css 覆盖的默认值。这是因为皮肤和容器 css 是在 module.css 之后加载的。

    【讨论】:

      猜你喜欢
      • 2011-11-28
      • 1970-01-01
      • 2011-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-26
      相关资源
      最近更新 更多