I’m not a lot different from other people you know. I also wanted my SharePoint search to index .pdf documents, because this of course is very l33t (and my boss wanted it…).
SharePoint does not support .pdf file out of the box. You will need to add an ifilter (to index the files), a .pdf file type and a .pdf icon.
Something important: If you google you run into a lot of “how to install Ifilter 6.o in SharePoint. I also screwed up here, and tried to install this ifilter, although I wondered why this version was never updated since 2005…
But what is the case: the new ifilter just ships with adobe acrobat reader! So the newest version (adobe 9.1.1) already contains an ifilter. Be sure to install the newest version, because the old ifilter cannot index “modern” .pdf files. Adobe also has a 9.0 ifilter for 64bit systems that you can download separately, foxit also delivers a (2x faster then all adobe filters) ifilter, but you’ll have to pay for that. Might be worth the money in some cases though.
Let’s get on with it. The install steps:
1. Install adobe reader on your server (http://get.adobe.com/reader/)
2. Add the filter-extension to the File types crawled:
Start -> Program -> Microsoft Office Server -> SharePoint 3.0 Central Administration -> <Name of Shared Service Provider> -> Search Settings -> File Types -> New File Type (Add extension pdf here)
3. Modify the following Registry keys by changing their “Default” value to the new CLSID of the Adobe IFilter:
{E8978DA6-047F-4E3D-9C78-CDBE46041603}
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office server\12.0\
Search\Setup\ContentIndexCommon\Filters\Extension\.pdf
Default --> {E8978DA6-047F-4E3D-9C78-CDBE46041603
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server
Extensions\12.0\Search\Setup\ContentIndexCommon\Filters\Extension\.pdf
Default --> {E8978DA6-047F-4E3D-9C78-CDBE46041603}
4. Add the Installation directory of the Adobe Reader v.9 to the System Path. For example, if the Reader is installed on “D:\Program Files\Adobe”, then add “D:\Program Files\Adobe\Reader 9.0\Reader” to the system path by (just paste it with a “;” behind the paths that are already there):
--> Right Click on My Computer -> Properties -> Advanced -> Environment Variables -> Path (Under System Variables) -> Edit -> (Add "D:\Program Files\Adobe\Reader 9.0\Reader").
This effectively tells the adobe IFilter where to pick up the dependent DLLs.
5. Recycle the search service:
> net stop osearch > net start osearch
6. Now you can crawl and search PDF documents with v.9.1 Reader.
7. Now we’ll finish up by adding the .pdf icon (download here officially: http://www.adobe.com/misc/linking.html). Or just save the one supplied here.
8. Now you need to set up the Icon file. If you downloaded the icon file in step 1 above, you will have a file called pdficon_small.gif. You need to copy this onto your server, into drive:\Program Files\Common Files\Microsoft Shared\Web Server extensions\12\TEMPLATE\IMAGES.
9. Next you need to edit the XML file which WSS uses to link file extensions to icons. This file is called DOCICON.XML and is located at drive:\Program Files\Common FIles\Microsoft Shared\Web Server extensions\12\TEMPLATE\XML. Navigate to that folder and locate the file. I would suggest making a backup copy first, then opening the file in NotePad. You need to add a mapping key for PDFs at the bottom of the file, above the </ByExtension> closing tag.
The new key will be <Mapping Key=”pdf” Value=”pdficon_small.gif” OpenControl=”"/> (note that XML is case sensitive so make sure you use same case as previous entries). Then save the file.
10. That’s pretty much it, but if you already have PDFs uploaded to your WSS server I would recommend starting a full crawl. You can do this with STSAdm, the command syntax is Stsadm -o spsearch -action fullcrawlstart . I also advise a iisreset, without this your icon might not show.
Then credits, this post is gathered from a few sources:
Clearest post on .pdf search out there
How to insert the pdf icon
If this post doesn’t work out for you (SharePoint environments differ greatly) you could try out these links:
- servergrrl
- Search in the microsoft knowledge base, they have some pretty lengthy articles on this area there.