Directory structure
A web application base on this framework uses two directories:
-
/opt/DOMAINfor static files -
/var/opt/DOMAINfor dynamic files
Note that the framework itself can be installed to standard directories like /usr or /usr/local.
Static
In the static directory /opt/DOMAIN there are:
-
binfor utility programs -
etcfor configuration files -
includecontains C/C++ header files -
init.dstartup/shutdown scripts for daemons -
libdynamic libraries -
mailsmail files in XSLT format -
sbinfor daemons -
webweb root directory
Dynamic
In the dynamic directory /var/opt/DOMAIN there are:
-
dbSQLite databases -
loglog files -
rundaemon pid files -
sockUNIX domain sockets
Configuration files
In the configuration directory /opt/DOMAIN/etc there are:
-
appd.envconfiguration for application daemon -
cgi.envconfiguration for CGI -
db.envwhich database to use -
dbproxyd.envconfiguration for database proxy daemon -
mta.envwhich mail system to use -
sessiond.envconfiguration for the session daemon -
soap.envwhere to find soap servers
See example/env of the distribution for sample configurations.
Daemon configuration
Each daemon (appd, dbproxyd, sessiond) reads its configuration file under /opt/DOMAIN/etc.
The following general configuration variables exist:
-
PORTsets the TCP port on which the daemon accepts connections. If this variable is omitted or empty, TCP connections are not possible -
UNIXSOCKETis the name of the UNIX domain socket in/var/opt/DOMAIN/sockon which the daemon accepts connections. If this variable is omitted or empty, UNIX domain socket connections are not possible -
THREADS_MINminimum number of threads in the thread pool that handle client connections -
THREADS_MAXmaximum number of threads in the thread pool that handle client connections. Additional connections wait in a FIFO queue until the next thread becomes available -
LOGLEVELlog level for logfile/var/opt/DOMAIN/log/DATE-HOST-DAEMON.log
Possible log levels: 1=FATAL, 2=ERROR, 3=WARN, 4=NOTICE, 5=INFO, 6=DEBUG. Log levels 5 and 6 are considered development/debugging log levels that output information normally not required in productive deployments. The recommended log level for productive deployments is 4.
See example/env of the distribution for sample configurations.
Client configuration
The following configuration files in /opt/DOMAIN/etc are used by clients:
-
db.envdatabase to use -
mta.envmail transport agent to use -
soap.envdefinition where to find SOAP servers
