Continuous integration 如何在Kentico 10中从CI中排除根页面?

Continuous integration 如何在Kentico 10中从CI中排除根页面?,continuous-integration,kentico,Continuous Integration,Kentico,我们已经启用了Kentio CI,并且没有考虑禁用它。我的情况是,我希望在服务器上部署的Kentico站点的所有页面上启用SSL,但希望在本地开发时禁用SSL 我知道可以通过转到文档根设置,然后将“需要SSL”收音机设置为“是”来启用SSL。这非常有效,正是我想要的 问题是,因为本地设置为“否”,并且启用了CI,所以当我们部署到服务器时,本地设置将覆盖服务器,服务器根页面将设置设置回“否”,我们必须手动切换 我知道,通过修改repository.config文件,可以从CI流程中包括和排除对象,

我们已经启用了Kentio CI,并且没有考虑禁用它。我的情况是,我希望在服务器上部署的Kentico站点的所有页面上启用SSL,但希望在本地开发时禁用SSL

我知道可以通过转到文档根设置,然后将“需要SSL”收音机设置为“是”来启用SSL。这非常有效,正是我想要的

问题是,因为本地设置为“否”,并且启用了CI,所以当我们部署到服务器时,本地设置将覆盖服务器,服务器根页面将设置设置回“否”,我们必须手动切换

我知道,通过修改repository.config文件,可以从CI流程中包括和排除对象,根据文档,也可以从CI流程中排除单个对象。需要特别注意的是,文档中的这一行:

要排除页面(cms.document对象类型),请使用别名路径值而不是代码名。这将根据页面在内容树中的位置来标识页面

我试图用
repository.config
中的以下代码排除网站的根页面:

<ObjectFilters>
    <ExcludedCodeNames ObjectType="cms.document">/</ExcludedCodeNames>
</ObjectFilters>

/
如果没有这一行,对根文档的任何修改都会被记录为Git的修改,这是预期的,但在添加这一行后,Git会将文档标记为删除,如下屏幕截图所示:

也许这是预期的行为,我只是不知道


我想知道如何从CI中排除单个页面。感谢您的帮助。

屏幕截图上的内容是预期行为,但这是您完全不想做的事情。CI恢复首先删除所有文档和对象,然后导入CI文件夹中的内容。删除根文档将有效地阻止导入任何其他文档,因为它没有“父文档”。即使不是这样,您也必须手动传输根文档的所有更改

最佳实践绝对是按照Brenden的建议在开发人员机器上设置SSL


另一种选择是根据某些标准(例如当前域名)利用和更改SSL设置。但这会带来不必要的错误倾向。

屏幕截图上显示的是预期行为,但这是您完全不想做的事情。CI恢复首先删除所有文档和对象,然后导入CI文件夹中的内容。删除根文档将有效地阻止导入任何其他文档,因为它没有“父文档”。即使不是这样,您也必须手动传输根文档的所有更改

最佳实践绝对是按照Brenden的建议在开发人员机器上设置SSL


另一种选择是根据某些标准(例如当前域名)利用和更改SSL设置。但这会带来不必要的错误倾向。

使用专用证书在IIS中本地启用SSL。这将很容易解决问题,并且不需要任何愚蠢的Kentico CI配置。此外,它还允许您在本地进行测试,以确保在升级到其他环境时不会出现HTTPS与HTTP错误。

使用专用证书在IIS中本地启用SSL。这将很容易解决问题,并且不需要任何愚蠢的Kentico CI配置。此外,它还允许您在本地进行测试,以确保在升级到其他环境时不会出现HTTPS与HTTP的错误。

为什么不使用私人证书在IIS中本地启用SSL?这将非常容易地解决问题,并且不需要任何愚蠢的CI配置。此外,它还允许您在本地进行测试,以确保您不会在HTTPS与HTTP之间出现错误。@BrendenKehren自从发布这篇文章以来,这正是我所做的,但我仍然想知道,为了学习,是否可以进行上述操作。为什么不在IIS中使用私人证书在本地启用SSL?这将非常容易地解决问题,并且不需要任何愚蠢的CI配置。此外,它还允许您在本地进行测试,以确保您不会在HTTPS与HTTP之间出现错误。@BrendenKehren自发布此文章以来,这正是我所做的,但我仍然想知道,为了学习,上述操作是否可行。感谢您的解释。根据获得的知识将此标记为答案。我已经在本地启用了SSL,并将继续使用。感谢您的解释。根据获得的知识将此标记为答案。我已经在本地启用了SSL,并将继续使用它。