I'm attempting to index the content of pdf's with Solr 6.6.2 and Sitecore 8.2 Update 6.
I've got my solr indexes working correctly, and I'm able to search text from pages (content items) and I'm able to locate pdf's by extention in my queries, but I'm not able to crawl the pdf's and return the text from within the pdf's.
I admit I'm very new to solr/Sitecore, and this is probably easy to do, and it's just escaping me. I would like to try sitecore's built in filters before branching out to tika or pdfbox or something else.
With that, I've looked at my ContentSearch.Solr.DefaultIndexConfiguration.config, file and it **appears* to be setup properly for crawling pdfs.
ContentSearch.Solr.DefaultIndexConfiguration.config, excerpt:
<field fieldName="_content" returnType="string" type="Sitecore.ContentSearch.ComputedFields.MediaItemContentExtractor,Sitecore.ContentSearch">
<mediaIndexing ref="contentSearch/indexConfigurations/defaultSolrIndexConfiguration/mediaIndexing"/>
and in my schema.xml file I have a line that reads:
<field name="_content" type="text_general" indexed="true" stored="true" />
So it would seem that is configured correctly for crawling pdf files. I read on the Sitecore doc site that you also need adobe pdf ifilter v9 (as v11 has issues) so I have installed v9 and set the path in my environment variables & rebooted.
This all sounds fine and good, but now I'm stuck as to what to do next to be able to execute a query string search to return content from inside pdf's
Ex:
http://localhost:8983/solr/sitecore_web_index/select?hl=on&q=_content:[some pdf content here]&hl.fl=_content&fl=_content
The questions I have are:
1) How do I know the ifilter is doing anything / configured properly?
2) How do I activate it? (rebuild indexes? restart solr / Sitecore? Which i've done, multiple times)
3) What else I need to do to be able to perform the above query?
Update: After 3hrs of playing around with this, I have done a much more involved set of steps to get this to work and still no joy. They are as follows:
1) Downloaded adobe ifilter v9 / installed
2) Updated system environment variables path to include C:\Program Files\Adobe\Adobe PDF iFilter 9 for 64-bit platforms\bin\;
3) Copied pdffilter.dll from installed directory (C:\Program Files\Adobe\Adobe PDF iFilter 9 for 64-bit platforms\bin) to c:\windows\system32\inetsrv directory.
4) Edited web.config file to change impersonate to true -
5) Verified the following blocks exists in Sitecore.ContentSearch.Solr.DefaultIndexConfiguration.config
<field fieldName="_content" returnType="string" type="Sitecore.ContentSearch.ComputedFields.MediaItemContentExtractor,Sitecore.ContentSearch"> <mediaIndexing ref="contentSearch/indexConfigurations/defaultSolrIndexConfiguration/mediaIndexing"/>
application/pdf
text/html
text/plain
6) Added the following extension to the above file to the section just below the previous lines
<extension>pdf</extension>
7) Deleted the "Website / App_Data / MediaCache" folder
8) Rebuilt sitecore index from rebuild index link in sitecore control panel
9) Cleared the sitecore cache - http: // {hostname} /sitecore/admin/cache.aspx
10) Reset IIS
Even after all of that, I still am not able to get Sitecore to crawl the content of pdf's. Did I miss a critical step somewhere?
thanks!