Installing PublicationsList.org on your own server
It is possible to obtain a site license for installing a local copy of the PublicationsList.org software on an internal university server, providing convenient publications list management services for all your academic staff. Please contact us to discuss your requirements.
This guide describes how to install PublicationsList on your own server. PublicationsList is a PHP web application, which uses some open source tools for bibliography format conversions; Java and Lucene for full text indexing and XPDF for generating thumbnails of papers.
It is possible to configure automated harvesting from a local installation of publications list; see the DSpace harvesting module for details and contact us if you use a different repository system.
The software has been tested on Linux systems running Apache and PHP (version 5).
0. Where to install publicationslist.org
You can install the publicationslist software in any web accessible folder, e.g.
Before you install publicationslist.org, you'll need:
- Apache2, PHP5, make, + a text editor
- Enable the apache module: mod_rewrite
- Enable .htaccess support in your web folder: ('AllowOverride All' in httpd.conf)
- Optional: Sun Java 6 (if you need full text search supported)
- Optional: XPDF and netpbm (needed to generate thumbnails of uploaded PDFs)
1. Download and unpacking the code
You can download the code from publist-1.1.tgz (updated Nov 30 2009) [password required - contact us for details], and unpack it in a web visible directory, e.g.:
The software extracts to the current directory, with an outline of the directory structure below:
Data on publications is stored in JSON and XML formats in the file system in the private/ and data/ subdirectories. The private/ folder is protected by a .htaccess file (set in 'make install' step above); you can check that this is set up correctly on your system by pointing your web browser at 'http://yoursite.edu/publist/private/' to make sure that you get a 'Forbidden' response. If you get a folder listing instead, check that you have enabled .htaccess support for the folder in your Apache configuration.
2. Edit the configuration files
A sample configuration file is provided in php/config-sample.txt which you need to copy to php/config.tmp and edit to point to your installation URL:
You need to edit the settings below to point at the URL of your installation, and configure custom messages; sample settings are shown below, and there is more documentation in the comments area of the 'config-sample.txt' file e.g. :
3. Integration with university authentication systems using mod_auth
If you have set up Apache's mod_auth module for integration of logins with a university system, you should enable it for the php/ directory (e.g. using .htaccess or a httpd.conf setting) and also edit the relevant lines of php/config.tmp:
For testing *only* you can also add the line:
4. Details of Apache .htaccess configuration
PublicationsList generates short URLs for publications lists, as they are more memorable, e.g. "http://publicationslist.org/fred". The actual html file lives in a longer URL - "http://publicationslist.org/data/fred/index.html". To use this feature, you need to enable '.htaccess' in your apache configuration, and ensure that the 'mod_rewrite' module is installed. For example, on Ubuntu the relevant setting is in /etc/apache2/sites-enabled/000-default , which needs to be changed from 'AllowOverride None' to 'AllowOverride All' for your publications list installation. On other linux variants the apache configuration settings might be stored in "httpd.conf" instead.
... then restart Apache after making any changes to its configuration:
To switch on the rewriting, you can copy the sample top level htaccess file in 'htaccess-sample.txt' to '.htaccess'. This does a pattern match on the URLs, so you may need to edit the file to match the install path:
NB - any mistakes in an .htaccess file can cause apache to fail to render web pages - so it is best to experiment on a development server first.
5. Bibutils configuration
PublicationsList uses the bibutils conversion tools for converting between different bibliography formats (bibtex, endnote, MODS etc). Static-linked binary versions of these are included in the import/ directory of your installation. If these do not work on your system (there can sometimes be problems with Linux binaries on different machines - you can try running './import/bib2xml -?' from the command line to check), you can download the source code from the bibutils website and install your own copy. The paths are configured in the 'php/importConfig.tmp' configuration file if you need to point at a different version of bibutils.
6. Testing your installation
To check that your installation is working, point your browser at http://yoursite.edu/publist/ and click the 'sign in' link on the right. This should take you to a page where you can enter your name to create your publications list - after this, usage should be the same as the standard version on publicationslist.org.
If you have the $authDebug = 1; setting in php/config.tmp, you can also try logging in as a particular user id (e.g. 'user123') by visiting: http://yoursite.edu/publist/php/signin.php?ru=user123 This bypasses the mod_auth authentication, so this setting must be switched off for production use.