【发布时间】:2015-11-29 11:17:09
【问题描述】:
我们正在开发一个 Umbraco 站点 - 使用共享开发数据库的多台开发机器。
当一位开发人员在 CMS 中对内容进行更改并执行保存并发布时,更改会反映在他的机器上,而不是其他开发机器上。
这似乎没有意义,因为我们都在查看同一个数据库。?我们尝试过重置 IIS 以查看它是否在工作中进行缓存,但这似乎也没有什么不同。
有什么想法吗?
【问题讨论】:
我们正在开发一个 Umbraco 站点 - 使用共享开发数据库的多台开发机器。
当一位开发人员在 CMS 中对内容进行更改并执行保存并发布时,更改会反映在他的机器上,而不是其他开发机器上。
这似乎没有意义,因为我们都在查看同一个数据库。?我们尝试过重置 IIS 以查看它是否在工作中进行缓存,但这似乎也没有什么不同。
有什么想法吗?
【问题讨论】:
Umbraco 做了很多缓存,所以它不必一直访问数据库。通常,所有发布的内容都缓存在App_Data\umbraco.config 的一个xml 文件中。您只需要让您的开发人员右键单击 umbraco 后台内容树的根目录,然后单击“重新发布整个站点”,即可从数据库中的 xml 缓存重新生成磁盘上的 xml 缓存。
您可能还需要重新索引您的检查索引。您通常可以在 umbraco 后台的开发人员部分找到“检查管理”仪表板。默认情况下,共有三个索引:InternalMember、Internal 和 External。除非您在 umbraco 网站上有会员资格,否则您可以忽略该索引。外部索引主要用于站点搜索。内部索引更为关键。它用于缓存媒体。我相信它也用于后台,但我不是 100% 确定。确保重新生成内部索引。
请记住,媒体文件默认存储在/media 目录中。这意味着如果开发人员“A”上传文件,物理文件将不会自动显示在开发人员“B”的机器上。
我敢打赌,有一些很酷的方法可以设置负载平衡来处理开发设置的缓存。我很确定还有一些方法可以将媒体存储在数据库中,因此您不必担心来回传输它们。
【讨论】: