我们使用自定义站点定义/模板以编程方式创建所有站点集合。一切都按预期工作,除了爬虫。它显然被拒绝访问这些网站。抓取日志说:
http://server.localnetwork.lan/somesites/siteName 找不到对象。(该项目已被删除,因为它要么未找到,要么爬虫被拒绝访问它。)
在日志文件中我得到了这个:
2009 年 8 月 11 日 14:20:34.01 OWSTIMER.EXE (0x0674)
0x1560 搜索服务器常见
MS 搜索管理
7hmh SearchUpgradeProvisioner 关键字配置 System.InvalidOperationException 中的高异常:Microsoft.Office.Server.Search.Administration.SearchUpgradeProvisioner 中的 jobServerSearchServiceInstance 为空。 .ctor(SearchServiceInstance searchServiceInstance) 在 Microsoft.Office.Server.Search.Administration.OSSPrimaryGathererProject.ProvisionContentSources()
如果我手动创建网站集,爬虫就可以访问它。相同的用户/帐户在两个站点上具有相同的访问权限,因此这不应该是问题。
我们用于实际创建网站集的代码如下所示:
SPWebApplication app = SPWebApplication.Lookup(new Uri("WebApplicationUrl"));
app.FormDigestSettings.Enabled = false;
app.Sites.Add("url", "title", "description", "language code", "SiteTemplateName", "Owner.Username", "Owner.Fullname", "Owner.Email");
app.FormDigestSettings.Enabled = true;
代码已稍作改动以保护无辜者... ;)
知道我们做错了什么吗?
(请注意,我不确定这是编程错误还是配置/设置错误,所以我与 Stackoverflow 交叉发布)