This will be migrated to the Trac Wiki

This installation document is setup for a Linux server. It has only been tested on Linux but should work on Windows.

I. Requirements

Apache HTTP Server 2.2 or later
PHP 5.1.0 or later
MySQL 4.1 or later
Java J2SE JDK 1.4 or later
YAZ 3.0 or later
GNU Aspell Library (

II. Installation Procedure

1. Install Apache HTTP Server
Ensure that mod_rewrite is included in the build

  • You will need to add the web directory as an accessible directory by the web server.
  • The web/interface/cache and web/interface/compile directories will also need to be owned by the web server.

2. Install MySQL

Most Linux distributions already have MySQL as a part of the distribution, but if you do not have it installed you can easily download from the following url:

3. Install PHP with following requirements:
--with-pdo-oci=instantclient,/path/to/oci, *

The --with-pdo-oci is at this point only used for Voyager libraries.
The --with-pspell is used for spelling correction and can be optional.
The --with-ldap is used for ldap authenitication. If you do not use LDAP, this can be ignored.

4. Install the Java JDK

5. Install the YAZ library

6. Create a user that will run vufind and define the JAVA_HOME
environment variable for that user.

7. Run the install script

The install script will attempt to setup the mysql database and install necessary libraries.

%> ./install

8. Edit configuration files

The web/conf/config.ini should be modified to match your system settings.
The web/.htaccess only requires the change of the RewriteBase field.

9. Start the VuFind Server

You can run the VuFind server by 2 methods. You can either start the server by running the startup script:

    %> ./ start
You can also run the server as a daemon. To do so just create a symbolic link into your /etc/init.d directory. You will then need to add the script to your init scripts.
    On Redhat: chkconfig --add vufind
    On Debian: update-rc.d vufind defaults       

10. Import BIB records into SOLR using the import script

The data directory defined in the config.ini file should be owned by the user that is running the import script.
The import script will create files in this directory.

By using the YAZ Marcdump utility, create a marcxml file from your bib records:
%> yaz-marcdump -f MARC-8 -t UTF-8 -o marcxml records.marc > catalog.xml

Copy the MarcXML file into the import directory and make sure it is named catalog.xml.
Then simply run the import/import-solr.php script from the command line:
%> php import-solr.php

11. Configure HTML Templates

For more information on customizing the UI of VuFind - visit the Customization Page.

* Steps to install PHP with PDO-OCI support:

  1. Download the and from the Oracle Instant Client web site
  2. Unzip the 2 zip files in the same directory
  3. Move the instantclient directory to somewhere on your server (/usr/local/lib is generally the place to put it)
  4. Create a symbolic link from the (or whatever version you have) to as well as the same for
  5. Configure PHP with the option '--with-pdo-oci=instantclient,/usr/local/lib/instantclient,'
    You may need to change the configure option to match the path that you have installed the instantclient to as well as the version that you downloaded