We are trying to set up a web-based document indexer that supports pdf, doc, docx, txt file types that does not require complicated setup procedure.

We have tried:

  • swish-e: produces errors on pdf / docs, difficult to configure/or just does not work.
  • Apache Solr: Can't find any simple examples / help / support.
  • Various trac plugins: Non working yet.

On our PC/server we have already setup an apache web-server for SVN and trac and additionally: python, PHP, mysql.

Ideally we want something that works out-of-the-box with pdf/docs... is there such a tool?

  • Would importing all documents into a document management system be a possible solution? – Nicolas Raoul Jan 20 '15 at 8:38
  • Possibly, ideally it would be light weight, easy to setup/use and web-accessible... do you have another option in mind? – code_fodder Jan 22 '15 at 7:21
  • My idea would be to put all of the documents inside an ECM system like Alfresco or NemakiWare. Such systems have powerful search built-in. – Nicolas Raoul Jan 22 '15 at 7:39
  • Yeah its not a bad idea :), do you know if they are web-accessible (i.e. control via http)? - i'll take a look at these two. – code_fodder Jan 22 '15 at 9:46

Sphider Plus will do pretty well for that. The original SPhider might also work but IIRC it doesn't automatically support doc/docx file indexing. I've found them both great. They are pretty much the same except that Sphider Plus is a thousand times better - think of the original as a 'lite' version. This is really a rec. for Sphider plus and that's the feature set I'll be primarily talking about, the only reason I mention the original is that it is free/donation ware whereas Sphider Plus is 25 EUR.

As you already have a WAMP Stack going setup will be quite simple. Make sure directory listing is enabled for any it to be actually able do to complete indexing of files that don't have links between them and set up Apache to host the desired files - with the VirtualHosts file (which will be located somewhere like this: Apache<versionnumber>\conf\extra\httpd-vhosts.conf).

The code you'll want will depend on what files you want searchable; I'd suggest something like this (just change the paths as desired/required): - I'll be referencing to these throughout these instructions but they are example only really.

<VirtualHost *:80>
    DocumentRoot "C:/Users/Nick/Desktop"
    ServerName www.desktop.loc
    ServerAlias desktop.loc
    <Directory "C:/Users/Nick/Desktop">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
<VirtualHost *:80>
    DocumentRoot "C:/Users/Nick/Pictures"
    ServerName www.pictures.loc
    ServerAlias pictures.loc
    <Directory "C:/Users/Nick/Pictures">
        Options Indexes FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all

and add to your OS hosts files: desktop.loc www.desktop.loc pictures.loc www.pictures.loc

Then install Sphider - Plus is probably better since it has easily set-up automated re-indexing and more file types supported. Probably want to make a new vhost location for search.loc or something for easy access. Might want to have those behind an htaccess login but accessible to the web as well as locally - or just within your LAN. As long a it is localhost only there is basically no security risk; as soon as it is open you'll have to consider secure risks and take steps (such as a secure login requirement) to mitigate them. Of course to have it beyond your LAN you'll have to either access it by IP - which under most ISPs regularly changes - or get a domain name and set up Dynamic DNS if required.

Next add picture.loc and desktop.loc locations to the Sphider index; it'll take a while depending on number of files etc. then you are good to go :D


  • no maximum number of files to index
  • Indexes HTML, and through built in converters can index PDF, DOCX, XLSX, ODT, ODS, CSV and XLS files - it will index filename only for images and such that it can't get contents from.
  • Quite reasonably priced (25 EURO for Plus, donation/free for original)
  • powerful admin interface
  • quite a bit of automation (ie auto-reindexing via CRON etc. for Plus only)
  • 1
    Thanks very much for all the info (+1), I will take a while to look through it and give it a go :) – code_fodder May 1 '14 at 6:10
  • I have now got this all installed. But it is not quite working yet (only indexing titles, not body of files). I think I missed something from your explanation: How do I "Make sure directory listing is enabled"?, is that an Apache setting? - thanks :) – code_fodder May 2 '14 at 7:06
  • @code_fodder Yes that is an Apache Setting - but if you are getting the titles it probably is - if you go to a directory without any index.[html/php/htm] you'll get something like this. hmm It should be indexing contents. hmm I'm suddenly thinking there might be something specific needing doing - I'll look over my old notes from installing it myself. Just to confirm are you using plus or the original? – Nick Dickinson-Wilde May 2 '14 at 7:17
  • Also, I am not sure how you do: "Next add picture.loc and desktop.loc locations to the Sphider index", there seems only to be a site url? – code_fodder May 2 '14 at 7:26
  • Yes, I am using plus version!, thanks for your tips :) – code_fodder May 2 '14 at 7:28

A radical solution is to use NemakiWare.

  • Advantage: Not difficult to set up, powerful search built-in (filenames, metadata, full-text)
  • Drawback: You will have to move all of your files INTO NemakiWare. NemakiWare will store them in its internal database. Your files remain accessible via a Web interface, and can be synced to employees' computers using CmisSync (so you end up with a kind of personal "Dropbox" server).

Supported formats: pdf, doc, docx, txt, many others.
Free, Open Source.

Disclaimer: My company makes both NemakiWare and CmisSync. Both free and open source.

  • Its not a bad idea... but I think all the docs have to be stored in the NemakiWare which is not (for us) a very good option :) – code_fodder Jan 28 '15 at 8:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.