---
title: "メディアファイルの索引内容"
slug: "index-content-of-media-files"
abstract: "メディアライブラリ内のPDFファイルをインデックスするためにIFilterを使ってください。"
---
# メディアファイルの索引内容

Sitecore Content Search APIは、以下のオープンソースライブラリを使用してメディアファイルからテキスト内容を抽出し、インデックス化しています。

-   PDFファイル用の[PDFSharp](http://www.pdfsharp.net/MainPage.ashx)
-   DOCX、XLSX、PPTXファイル用の[Open XML SDK](https://docs.microsoft.com/en-us/office/open-xml/open-xml-sdk)

## メディアインデックスの設定

デフォルトのテキストエクストラクタは、.pdf、.docx、.xlsx、.pptxのファイル形式のみをサポートしています。拡張リストが必要な場合は、IFilterテキストエクスプレクタの使用を検討してください。

この場合、Sitecore <mediaIndexing> セクション内の設定を使用し、以下の拡張機能でコンテンツをインデックス化しようとします:rtf、odt、doc、dot、docx、dotx、docm、dotm、xls、xlt、xla、xlsx、xlsm、xlsm、xlam、xlsb、ppt、pot、pps、ppa、pptx、potx、ppsx、ppam、pptm、potm、ppsm、またはMIMEタイプのapplication/pdf、text/html、text/plain。操作の成功はシステムにインストールされているiFilterに依存します。

アプリケーションがAzure Web Appとして展開されている場合、iFilterオプションは使えません。

異なるファイルタイプのインデックスを使いたい場合は、検索プロバイダーのmediaIndexing設定ノードをパッチで修正してファイルタイプを指定できます。Solrの場合、デフォルト設定はApp\_Config\\Sitecore\\ContentSearch\\Sitecore.ContentSearch.Solr.DefaultIndexConfiguration.configファイルにあります。

mediaIndexingノードの下には2つのノードがあります:

-   mimeTypes
    
    このノードは、含まれる(インデックス付け)または除外される(インデックスされていない)MIMEタイプを指定します。
    
-   extensions
    
    このノードは、含まれる(インデックス付き)または除外される(インデックスされていない)ファイルの拡張子を指定します。
    

各ノードには2つのノードがあり、excludesとincludesで、インデックスしないものとインデックスするものを指定します。両方の場所でアスタリスク(\*)をワイルドカードとして使うことができます。ワイルドカードを使ってホワイトリストとブラックリストを実装できます。ホワイトリストはexcludesノードにワイルドカードを追加し、includesノードにホワイトリストの拡張やMIMEタイプを追加してください。 includesノードにワイルドカードを追加してブラックリストにし、excludesノードで特定の拡張やMIMEタイプをブラックリストにします。

## インデックス作成にIFilterを使用するようにコンテンツ検索を設定する

SitecoreコンテンツSearch APIをネイティブMicrosoft WindowsのIFilterインターフェースで設定できます。

PDF iFilterはデフォルトでインストールされていません。PDFファイルのコンテンツをインデックスするには、インデックスを行う各Sitecoreインスタンスを見つけてください。SolrやAzure Searchプロバイダーを使う場合、通常はCMインスタンスです。そのようなSitecoreインスタンスをホストする各マシンにPDF IFilterをインストールする必要があります。

IFIlterがメディアファイルの内容を抽出してインデックス作成できるようにするために:

-   Modify(パッチ) App\_Config\\Sitecore\\ContentSearch\\Sitecore.ContentSearch.configを、implementationType属性の値を次のように変更します:
    
    <services>
     <register serviceType="Sitecore.ContentSearch.ContentExtraction.IMediaFileTextExtractor, Sitecore.ContentSearch.ContentExtraction" implementationType="Sitecore.ContentSearch.Extractors.IFilterMediaExtractor, Sitecore.ContentSearch" />
    </services>