This file contains the installation instructions for the latest version of ABCD.
This text is intended for the system manager and the database manager.
The ABCD code runs on Windows and Linux flavors. The source code is equal for both OS variants, except for some small differences.
ABCD requires several other components for its operations. Component CISIS (the database kernel software used by ABCD) is distributed with ABCD.
Some integrated components are also distributed with ABCD.
Other components are indicated as prerequisites and not distributed with ABCD.
Module EmpWeb (advanced loans module) has a completely different technology, it is put outside the ABCD-www folder and needs to be configured according to the instructions in its own manual.
- A webserver. ABCD is tested with an Apache web server.
In order to minimize security problems the latest version is recommended. ABCD requires for a minimal installation at least
mod_cgi: To allow execution of CGI scripts
mod_rewrite: To allow rewrite rules in the
- A PHP processor. The unicode implementation of ABCD requires PHP 7.4.x.
The default loaded extensions depend on the actual PHP processor. ABCD requires for a minimal installation at least
mbstring: Multibyte support. To enable unicode.
gd2: Image functions. The name depends on the PHP implementation
- Web server extensions
mod_ssl: Enables certificates and the https protocol
- PHP Extensions
curl: Required if
DSpace bridgeis used (to download records from DSpace repositories)
ldap: Required if login with LDAP is used
xmlrpc: Required if Site is used
xsl: Required if Site is used
yaz: Required if
Z39.50client is used (to download records via the Z39.50 communication protocol)
- Apache Tika. This content analysis toolkit is required by the Digital Document functionality in ABCD.
ABCD uses the archive
javato execute this jar.
tikaarchive from https://tika.apache.org/download.html
The preparation phase ensures that a web server and PHP with the desired prerequisites are installed. This chapter adresses some attention points specifically for of ABCD.
Multiple solutions exist to fullfill these functions ( native, XAMPP, WAMP, EasyPHP,…). Due to the many solutions and options of these solutions it is required to read the solution documentation carefully. This guide gives only minimal directives.
Good to know:
- Integrated solutions offer multiple functions. ABCD requires only the web server and PHP
- The firewall requires attention for the ABCD ports
Check the web server and PHP
Ensure that the webserver and PHP are installed correctly and that PHP has the required extensions
The code for ABCD contains example configuration files for the webserver.
All code for ABCD is located in GitHub ABCD-DEVCOM / ABCD2
This repository contains shared code for Linux AND Windows and data specific for Linux OR Windows.
The downloads contains all components.
- Select option Releases on the right side of the window
- Scroll to the desired release and select Assets
- Select Source code (zip) or Source code (tar.gz)
Unpack downloaded archive
Use your favorite utility (zip/7zip/tar/…) to unpack the downloaded file. The folder structure
<Release_name> --+-- www ----------+-- bases-examples_Linux +-- bases-examples_Windows +-- cgi-bin_Linux +-- cgi-bin_Windows +-- extra +-- htdoc +-- zz_installation +-- zz_miscellaneous
Virtual host file
The webserver serves an ABCD installation with a virtual configuration. With this technique multiple, completely different installations are possible.
- These example files are located in
<Release_name> --+-- zz_installation
- These files are example files. MUST be examined and updated to serve your needs and match the actual webserver.
- The virtual host file determines the protocol, port and server name for the ABCD installation.
- The port number is picked up by the ABCD installation
- The protocol (http/https) is picked up by the ABCD installation
- The https protocol is recommended. Take care of a certificate. To enable https: uncomment the lines with parameter names SSL*
- The virtual host file determines the locations for the ABCD components. The defaults are different for Linux and Windows.
The webserver adresses these folders with parameters:
- DocumentRoot : folder with ABCD PHP-scripts
- ScriptAlias cgi-bin : folder with executable files (e.g. CISIS, jar’s,…)
- Alias docs : folder with database folders
- The example virtual host file specifies a specific location for the logs of this virtual host. Must be an existing folder ! Create it if it does not exist.
- The example virtual host file contains common PHP flags
Virtual host file installation
- Copy the example file to the webserver configuration. The file name can be arbitrarily chosen.
- WAMP →
- XAMPP →
- native Ubuntu →
- The existence of the file must be made known to the server. Method depends on the installed webserver solution
- XAMPP → edit
- native Ubuntu →
sudo a2ensite vhost_ABCD_9090_Linux.conf
- Check configuration
- XAMPP → Start service and check log files
- native Ubuntu →
sudo apachectl -S/
sudo apachectl -t -D DUMP_MODULES/
sudo systemctl start apache2
Preprocess the downloaded folders
The ABCD code is downloaded in the preparation phase.
Note the different actions for Windows and Linux platforms.
bases-examples_Linux # Linux users: Rename to "bases". Windows users: Delete bases-examples_Windows # Windows users: Rename to "bases". Linux users: Delete cgi-bin_Linux # Linux users: Rename to "cgi-bin". Windows users: Delete cgi-bin_Windows # Windows users: Rename to "cgi-bin". Linux users: Delete extra # Contains c-source code: Delete htdocs # Contains ABCD zz_installation # Contains this file, the "virtual host example files", and related files: Delete after installation zz_miscellaneous # Only used by developers: Delete
The resulting set is:
bases # Folder with example databases cgi-bin # Folder with executable programs htdocs # Contains ABCD
Copy to the web server
The virtual host file specifies the folder names for the ABCD installation.
- Copy the content of htdocs to the folder specified by parameter DocumentRoot
- Copy the content of cgi-bin to the folder specified by parameter ScriptAlias
- Copy the content of bases to the folder specified by parameter docs
- If the Digital Document feature is used: Copy the downloaded tika jar to the folder specified by parameter ScriptAlias
- For Linux installations
- Change ownership of the folders to the owner/group of the webserver (
chown -R ...)
- Change protection of the folders to correct values (
chmod -R ...)
- Restart the webserver/web server service
Start your favourite web browser and run ABCD with following URL’s.
https://localhost:9090/phpinfo: Show information about PHP settings and extensions
https://localhost:9090: The central module. Login username
https://localhost:9090/iah: The iAH module. Login username
https://localhost:9090/site: The SITE module. No login
https://localhost:9090/site/admin: The SITE module. Login username
https://localhost:9090/opac: The OPAC module. No login
Recommendation: Modify the passwords of the administrative users to avoid unexpected logins with too much privileges
Additional help can be obtained by joining and using the e-mail based
ISIS-users discussion list,
- registering: http://lists.iccisis.org/listinfo/isis-users
- using : mail to ‘firstname.lastname@example.org’