1.2: Installing Xestia Scanner Server

1.2.1: Copying files

Before Xestia Scanner Server can be used, the files need to be copied to the correct place. After extracting the archive, the structure of the extracted archive should be like this:

Documentation – Documentation that is available in several languages.
cgi-files – The main Xestia Scanner Server script, associated modules, installer scripts and language files.
 Modules – Modules for Xestia Scanner Server are stored here.
  Auth – Authentication modules are stored here.
  Export – Export modules are stored here.
  Presentation – Presentation modules are stored here.
  Output – Output modules are stored here.
  System – System modules are stored here.
 lang – The directory for language files in Xestia Scanner Server.
 scans – The directory for scanned documents in Xestia Scanner Server.
misc – Miscellaneous files (mainly for developers).
non-cgi-files – Non CGI files that need to be placed outside of the cgi-bin directory (such as the images for the default layout).  images – Images for the default layout.

The files in the cgi-files directory should be copied to the cgi-bin1 directory2 and the files in the non-cgi-files directory should be copied to a directory which can be accessed from the web server (so that it can be read). This must be copied to outside the cgi-files.

1.2.2 Setting Permissions

The following permissions should be set for the files that have been copied to the cgi-files directory based on the user/web server daemon set as owner of the files and the web server daemon set as the group (the following file list should apply to those running *nix/BSD systems):                                                                                                                                                                                                   
FilenameOwnerGroupOthers
(Top Directory)
After installation it is advised to make this directory readonly to prevent settings changed.
RWXRWXNone
ModulesRXRXNone
Modules/AuthRXRXNone
Modules/Auth/*.pmRXRXNone
Modules/ExportRXRXNone
Modules/Export/*.pmRXRXNone
Modules/PresentationRXRXNone
Modules/Presentation/*.pmRXRXNone
Modules/OutputRXRXNone
Modules/Output/*.pmRXRXNone
Modules/SystemRXRXNone
Modules/System/*.pmRXRXNone
lang RX RX None
lang/*.lang R R None
scans RWX RX None
xsdss.cgi RX RX None
install.cgi RX RX None
install-multiuser.cgi RX RX None
page.html R R None


R = Read, W = Write, X = Execute/Allow directory listing

For the non-cgi files directory, read only permissions should be set on all files (and read and allow directory listings for directories) as no writing should be needed. Once this is done, the installer script can be run by browsing to URI location of where the files in the cgi-files directory were in place and adding install.cgi to the end of it.

1 The cgi-bin directory is used for storing scripts that use the Common Gateway Interface (CGI). CGI scripts are typically associated with Perl scripts but can also be C++, C, Python, shell script and many others.

2 Some servers are configured so that CGI scripts can run from any directory so in this case Xestia Scanner Server doesn't have to be placed in the cgi-bin directory.