gpt4 book ai didi

umbraco - 以编程方式将 Umbraco 数据从开发站点迁移到实时站点

转载 作者:行者123 更新时间:2023-12-04 12:37:03 25 4
gpt4 key购买 nike

我的情况是,我负责为 Umbraco 制作应用程序或扩展,使后端用户能够将他们在开发站点上的更改迁移到实时站点。这种迁移应该每天发生一次,或者在后端用户按下后端的按钮时发生。

我知道 Umbraco 在 Courier 包中提供了这个,但显然它在这种情况下效果不佳。

更多细节:

开发站点和实时站点都驻留在同一台服务器上,它们的数据库也是如此。数据只需从一个文件夹传输到另一个文件夹,并且与数据库中的表相同。

正如我所看到的,有两种方法可以解决这个问题。

1)您进行完整迁移,基本上是对实时数据库进行拆卸并将其更新到新版本。然后,您也复制所有需要的文件。

2) 您创建了一个包含文档类型等的包,您在开发者站点上已更改并在实时站点上加载该包。

第 1 条的问题是,在完成转移后,您似乎必须重新发布整个站点。据我所知,您可以使用网络服务来做到这一点,但如果我可以使用控制台应用程序,我会更喜欢它。

我的问题是:

有没有办法以编程方式创建包并以相同的方式加载它们,或者以编程方式实现此迁移的最佳方法是什么?

任何建议将不胜感激,因为我有点不知所措:)

编辑

我最终实际上做了一个完整的镜像,因为我使用 Robocopy 传输文件夹中所有已更改的文件,然后我使用 SQL 命令对开发站点进行了备份,然后我在使用 RESTORE SQL 命令的实时数据库。

需要在 SQL 命令中进行一些设置,但它运行平稳,根据已更改的文件数量,完整传输需要 10 秒。

最后一件事。如果您希望更改可见,您需要重新加载 Umbraco。您可以通过手动修改 web.config 文件或以编程方式将其设置为 LastWriteTime 来完成此操作。

最佳答案

您始终可以创建一个用户控件来为您处理整个站点的重新发布,您可以从控制台应用程序调用它。

您也可以加入 the Courier 2 beta程序,这确实足够好(无论如何,我自己还没有测试过它)。

另一种方法是将所有节点作为 xml 提要提供,并使用 CMSImport 的调度功能。自动迁移节点。

这是一个艰难的选择,有很多选择,但还没有 Elixir 。我非常希望 Courier 2 能够完美地解决这个问题,并热切地等待它的发布。

关于umbraco - 以编程方式将 Umbraco 数据从开发站点迁移到实时站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5804416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com