在 SharePoint 中,将子网站移动到其自己的网站集的最佳方法是什么?

在 SharePoint 中,将子网站移动到其自己的网站集的最佳方法是什么?

我目前正在运行 SharePoint 2007 Farm。

我有一个子网站(http://服务器/站点/hr/finance),我希望将其移动到其自己的网站集 (http://服务器/站点/财务)。

我使用 stsadm -o export 导出了子网站。然后我创建了新的网站集 (http://服务器/站点/财务)。然后我尝试使用 stsadm -o import 导入该站点。

但是,我收到以下错误:“无法导入该文件,因为其父网站不存在”

我正在以网站集管理员的身份运行。

答案1

看看 Gary Lapointe 的自定义 STSADM 命令gl-convertsubsitetositecollection- 这将自动执行导出、创建管理路径、导入等过程。

答案2

注意:当我发布链接时,我没有声誉,所以我用“hxxp”替换了“http”......只需将xx更改为tt:p

这对我每天都有用:关于我的设置:当我迁移站点时,通常是在服务器之间进行。

如果所有内容都放在同一台服务器上,那就更容易了。

如果您要在服务器之间移动,则只需在源服务器上执行导出,然后创建新的内容数据库/管理路径/空白网站集,并在目标服务器上运行导入。

无论如何,运行此程序,将您的 URL 和文件路径替换为您想要备份的位置:

stsadm -o export -url hxxp://server/sites/site -filename Z:\SPBackups\sites\site\sites_to_backup.cmp -includeusersecurity -nofilecompression -versions 4

现在,转到“中央管理”>“应用程序管理”。

如果此站点将位于新的内容数据库中,请创建该数据库。

现在返回应用程序管理,如果需要,创建一个新的管理路径。

然后,“创建网站集”。

选择“空白网站模板”(或者我忘记的具体措辞)。单击“创建”,然后等待它为您完成创建空白网站集。

创建后,不要浏览到该网站。创建后,不要浏览到该网站。创建后,不要浏览到该网站。创建后,不要浏览该网站。

在命令提示符中运行此命令:

stsadm -o import -url hxxp://server2/newsite -filename C:\SPBackups\sites\site\sites_to_backup.cmp -includeusersecurity -nofilecompression

它应该使用与源服务器上相同的模板按原样导入所有内容。

现在,浏览您的新网站集。除了一些损坏的链接外,一切都应该正常。

要解决此问题,请转到http://stsadm.blogspot.com。安装他的自定义 STSADM 扩展。您需要的扩展位于此处:hxxp://stsadm.blogspot.com/2009/01/replacing-navigation-urls-using-stsadm.html。

您将运行以下命令:stsadm -o gl-replacenavigationurls –url "hxxp://server/newsitecollection" –searchstring "hxxp://server/oldsitecollection/oldsubsite" –replacestring "hxxp://server/newsitecollection" –scope Site

该命令将转到新网站集 (hxxp://server/newsitecollection) 并在整个网站中搜索字符串“hxxp://server/oldsitecollection/oldsubsite”,并将其替换为“hxxp://server/newsitecollection”。因此,指向旧网站(文档库、列表等)的任何链接都将被修改为转到新网站集的 URL。

希望这可以帮助!

PS - 您还可以使用 Gary 为 gl-convertsubsitetositecollection 提供的扩展...效果很好。但我一般都用这个,因为它不太复杂。

答案3

没有好的方法可以将整个子网站移至顶级网站。基本上,如果有子网站,就永远是子网站。

这有点用……您可以将子站点保存为站点模板,使用 stsadm 将模板添加为全局模板,然后从此站点模板创建新的顶级站点集合。警告:这样做有很多问题,许多图库可能会丢失(例如,Web 部件图库将无法正确填充)。

但是,最好还是重新来过……如果您一定要让这个网站成为顶级网站 - 那就一点一点地重建它。幸运的是,您可以使用一些工具来减轻痛苦:导出/导入 Web 部件、将列表另存为带内容的模板 - 将它们添加到新网站等……

相关内容