This file contains the installation instructions for the latest version of ABCD.
This text is intended for the system manager and the database manager.
Introduction
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.
Prerequisites
Always required
- 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 - Module
mod_cgi
: To allow execution of CGI scripts - Module
mod_rewrite
: To allow rewrite rules in the.htaccess
file - 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 - Extension
mbstring
: Multibyte support. To enable unicode. - Extension
gd
orgd2
: Image functions. The name depends on the PHP implementation
Optional requirements
- Web server extensions
- Module
mod_ssl
: Enables certificates and the https protocol - PHP Extensions
- Extension
curl
: Required ifDSpace bridge
is used (to download records from DSpace repositories) - Extension
ldap
: Required if login with LDAP is used - Extension
xmlrpc
: Required if Site is used - Extension
xsl
: Required if Site is used - Extension
yaz
: Required ifZ39.50
client 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 archivetika-app***.jar
andjava
to execute this jar.
Download thetika
archive from https://tika.apache.org/download.html
Preparation
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
Download ABCD
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
will be:
<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.
The example virtual host configuration files for Linux and Windows
contain the values for a default ABCD installation.
- 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.
Example locations: - WAMP →
wamp/alias
, - XAMPP →
apache/conf/extra
, - native Ubuntu →
/etc/apache2/sites-available/
- The existence of the file must be made known to the server. Method depends on the installed webserver solution
- XAMPP → edit
httpd.conf
→include conf/extra/vhost_ABCD_9090_Windows.conf
- 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
Install ABCD
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
Run
Start your favourite web browser and run ABCD with following URL’s.
https://localhost:9090/phpinfo
: Show information about PHP settings and extensionshttps://localhost:9090
: The central module. Login usernameabcd
, passwordadm
.https://localhost:9090/iah
: The iAH module. Login usernameabcd
, passwordadm
.https://localhost:9090/site
: The SITE module. No loginhttps://localhost:9090/site/admin
: The SITE module. Login usernameadm
, passwordx
.https://localhost:9090/opac
: The OPAC module. No login
Configure
Recommendation: Modify the passwords of the administrative users to avoid unexpected logins with too much privileges
Help
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 ‘isis-users@iccisis.org’