【问题标题】:Sitecore 7 pdf indexingSitecore 7 pdf 索引
【发布时间】:2013-08-01 15:47:54
【问题描述】:

我尝试使用 Sitecore 7 索引 PDF 文件。 我安装了 IFilter ,但在爬虫日志中收到下一个错误:

ManagedPoolThread #17 09:24:20 WARN  LuceneIndexOperations : Update : Could not build document data 4433434-3443-3223-91c4-233232. Skipping.
Exception: System.Runtime.InteropServices.COMException
Message: Error HRESULT E_FAIL has been returned from a call to a COM component.
Source: mscorlib
   at System.Runtime.InteropServices.ComTypes.IPersistFile.Load(String pszFileName, Int32 dwMode)
   at Sitecore.ContentSearch.Extracters.IFilterTextExtraction.FilterLoader.LoadAndInitIFilter(String fileName, String extension)
   at Sitecore.ContentSearch.Extracters.IFilterTextExtraction.FilterReader..ctor(String fileName)
   at Sitecore.ContentSearch.ComputedFields.MediaItemIFilterTextExtractor.ComputeFieldValue(IIndexable indexable)
   at Sitecore.ContentSearch.ComputedFields.MediaItemContentExtractor.ComputeFieldValue(IIndexable indexable)
   at Sitecore.ContentSearch.LuceneProvider.LuceneDocumentBuilder.AddComputedIndexFields()
   at Sitecore.ContentSearch.LuceneProvider.LuceneIndexOperations.GetIndexData(IIndexable indexable, IIndexable latestVersion, IProviderUpdateContext context)
   at Sitecore.ContentSearch.LuceneProvider.LuceneIndexOperations.BuildDataToIndex(IProviderUpdateContext context, IIndexable version, IIndexable latestVersion)
   at Sitecore.ContentSearch.LuceneProvider.LuceneIndexOperations.<>c__DisplayClass7.<Update>b__0(Item version)

我必须做的工作是因为在 Sitecore 文档中他们说它必须开箱即用。

【问题讨论】:

    标签: sitecore sitecore7


    【解决方案1】:

    我遇到了同样的问题,我收到了 Sitecore 支持的下一个回复(之后它工作正常):

    1) 将所有 Adob​​e iFilter .dll 文件复制到“\System32\Inetsrv”文件夹中。这是 Windows Server 上 IIS 的工作目录。 Adobe iFilter .dll 文件默认存储在“C:\Program Files\Adobe\Adobe PDF iFilter 9 for 64-bit platforms\bin”文件夹中。 您还可以使用“IFilter Explorer”工具来检测存储 .dll 文件的文件夹: http://www.citeknet.com/Products/IFilters/IFilterExplorer/tabid/62/Default.aspx 更多详情请看截图: http://screencast.com/t/xmWukanM+

    2) 删除“Website/App_Data/MediaCache”文件夹下的所有文件;

    3) 重建 Sitecore 搜索索引(Sitecore -> 控制面板 -> 索引 -> 索引管理器);

    4) 清除 Sitecore 缓存(http://{hostname}/sitecore/admin/cache.aspx 工具); 5)重启IIS;

    【讨论】:

      【解决方案2】:

      这是我采取的解决方案,因为我不喜欢将 iFilter 相关 DLL 处理到系统路径中的想法。

      • 安装 Adob​​e IFilter 9 (I used this link)。注意版本 9 是必不可少的,因为从版本 X 开始,它们是 abandoned file based 接口。
      • 将过滤器位置添加到 PATH 环境变量。就我而言,它是%ProgramFiles%\Adobe\Adobe PDF iFilter 9 for 64-bit platforms\bin\
      • 运行iisreset
      • 返回 Sitecore 应用并为必要的索引运行索引重建。

      供您参考:

      • 在尝试解决该问题时,我授予了对应用程序池帐户的 IFilter 文件夹的完全访问权限。我认为没有必要,因为我最后删除了它,一切仍然正常。

      在这些步骤之后,PDF 索引开始在我在 Windows 8.1 上运行的 Sitecore 7 实例上正常工作。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多