Thursday, November 24 2005

What's in the config directory?

Server configuration, disecting the puakma.config file

The config directory is where all the server configuration files are held. The main file is puakma.config. This dictates how the Puakma server instance is set up. All files are plain text and may be edited with your favourite text editor. Let's take a look at the settings. Most are self explanatory, but other require a little more detail. See the comments in blue...

########## PUAKMA CONFIGURATION FILE #################
#
# This file controls how puakma behaves and is required for
# successful system operation.
# Before making any changes to this file, please make a backup.
# Once the file is changed, the server must be restarted.
#
# The paths in this file assume execution from the /bin/ dir
#
#
######################################################

#********* MAIN **********
#Determines what error messages etc will be displayed & in what language
LanguageFilePath=../config/msg_en.lang

SystemTempDir=../temp/
#TCP/IP host name
SystemHostName=webwise1.wnc.net.au
#LogDateFormat=yyyy-MM-dd HH:mm:ss
LogDateFormat=dd/MM/yyyy HH:mm:ss
#LogFile=../logs/puakma.log
PuakmaClassPath=puakma.jar
PuakmaJDBCJarPath=../jdbc/
PuakmaAddInPath=../addins/
SessionTimeout=60
MaxSessions=-1
LogSessions=0
AddIns=puakma.addin.http.HTTP,puakma.addin.mail.MAILER,puakma.addin.agenda.AGENDA
Authenticators=puakma.security.pmaDefaultAuthenticator
#When doing group lookups, 1 will use the authenticator that was used to login on
#any other value will use the first in the chain
UseExactAuthenticator=1
#valid SystemDebugLevels=0 to 5 (0=none, 5=everything)
SystemDebugLevel=0
#This turns the ability to enter commands at the server console on and off. 1=on, 0=off
AllowConsole=1

#********* JDBC SETTINGS **********
# Note: Paths/urls are CaSe senSitive!
#*** for mysql ***
SystemDBName=puakma
SystemDBURL=jdbc:mysql://localhost:3306/
SystemDriverClass=org.gjt.mm.mysql.Driver
SystemUser=root
SystemPW=


#********* HTTP SERVER SETTINGS **********
#Defines the ports the server listens on. Comma seperated, append SSL to ensure a secure socket
HTTPPorts=80,443SSL
#The number of milliseconds to wait before dropping the connection if no data is transmitted by the client
HTTPPortTimeout=30000
#The number of IP connections that will be queued by the OS.
HTTPPortBacklog=100
#The number of seconds to wait for slow threads when shutting down
HTTPShutdownWaitSeconds=5
#If the MaxSessions count is exceeded, send this to clients
#HTTPMaxSessionRedirect=/full_session.html
#HTTPMaxSessionRedirect=http://www.abc.com
#size of the design element chache in MB
HTTPServerCacheMB=10
#Allow this much data to be stored on session objects
HTTPObjectCacheMB=2

#- This section maps other server names on to the this host
HTTPDefaultURL=/puakma.pma
HTTPHostMapFile=../config/httphostmap.config

#- Max concurrent http requests
HTTPMaxThreads=200
HTTPMinThreads=10
HTTPThreadCreateTimeout=3000
HTTPMimeFile=../config/mimetypes.config
HTTPPublicDir=../html_public/
#if 1 allows anonymous access to HTTPPublicDir
HTTPAllowAnonPublicDir=1
#Define the maximum allowed requests over a single TCP/IP connection 
HTTPMaxPerConnection=5
HTTPTextLog=../logs/weblog_
HTTPLogToFile=0
HTTPLogToRDB=1
#Log inbound http requests. Some ISPs bill on inbound traffic
HTTPLogInbound=1
#HTTPLogMimeExclude=image/gif,image/jpeg
#Use the Java keytool.exe to add your certificates to this file
HTTPSSLKeyRing=../config/selfcert.kyr
HTTPSSLKeyRingPW=password

 

#********* MAILER SETTINGS ********** #For outbound mail
MAILERMailDomain=puakma.net
MAILERTransferThreads=5
MAILERThreadCreateTimeout=30000
#The host all outbound mail will be sent to
MAILERSmartHost=localhost
MAILERSmartHostPort=25
#Define how often the database tables will be cleaned of sent mail
MAILERCleanUpSeconds=120
#- Poll for new mail every x seconds
MAILERPollSeconds=3
MAILERMaxRetries=10
MAILERRetryMinutes=7


#********* AGENDA SETTINGS **********
#- number of concurrent actions that may run
AGENDAMaxConcurrentActions=5
#- number of minutes between refreshing the internal action list
AGENDARefreshInterval=15



msg_en.lang
This is the file used to internationalise the messages displayed by puakma. It is referred to in puakma.config, so you may easily change it to your locale by editing this text file.

 

mimetypes.config
This file contains all the mime mappings. For example if you place a file in the /html_public/ directory ending in .xyz, Puakma will refer to the mimetypes.config file to determine the type of file (eg "www/unknown").

 

httphostmap.config
This file is where you define your virtual hosts. This allows you to have multiple sites sharing the same host IP address. Each entry is in a hostname and database path pair.

Commentary is closed