##
##  axkit-apache.conf -- AxKit Apache Custom Configuration
##

ServerRoot             @l_prefix@
ServerAdmin            root@@l_hostname@.@l_domainname@
ServerName             @l_hostname@.@l_domainname@
ServerTokens           Prod
User                   @l_rusr@
Group                  @l_rgrp@
Listen                 127.0.0.1:8080

#   runtime files
PidFile                @l_prefix@/var/axkit/run/apache.pid
ScoreBoardFile         @l_prefix@/var/axkit/run/apache.sb
LockFile               @l_prefix@/var/axkit/run/apache.lck

#   include apache-perl
Include                @l_prefix@/etc/apache/apache.d/apache-perl.conf

#  server behaviour
Timeout                300
KeepAlive              on
MaxKeepAliveRequests   100
KeepAliveTimeout       15
MinSpareServers        5
MaxSpareServers        10
StartServers           5
MaxClients             15
MaxRequestsPerChild    500
HostnameLookups        off
UseCanonicalName       on

#   access logging
LogFormat              "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat              "%h %l %u %t \"%r\" %>s %b" common
LogFormat              "%{Referer}i -> %U" referer
LogFormat              "%{User-agent}i" agent
CustomLog              @l_prefix@/var/axkit/log/apache.access.log common

#   error logging
LogLevel               warn
ErrorLog               @l_prefix@/var/axkit/log/apache.error.log
ServerSignature        on

#   secure root directory
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>

#   browser specifics
BrowserMatch "Mozilla/2"       nokeepalive
BrowserMatch "MSIE 4\.0b2;"    nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0"       force-response-1.0
BrowserMatch "JDK/1\.0"        force-response-1.0

#   SSL/TLS support
<IfModule ssl_module>
    SSLRandomSeed           startup builtin
    SSLRandomSeed           connect builtin
    SSLMutex                sem
    SSLSessionCache         shmcb:@l_prefix@/var/axkit/run/apache.scache(512000)
    SSLSessionCacheTimeout  300
    SSLCipherSuite          ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
    SetEnvIf User-Agent ".*MSIE.*" \
             nokeepalive ssl-unclean-shutdown \
             downgrade-1.0 force-response-1.0
    <Files ~ "\.(cgi|shtml|phtml|php?)$">
        SSLOptions +StdEnvVars
    </Files>
    <Directory "@l_prefix@/cgi">
        SSLOptions +StdEnvVars
    </Directory>
</IfModule>

#   configure AxKit
RewriteEngine     on
RewriteRule       ^/$      /axkit/ [R,L]
RedirectMatch     ^/axkit$ /axkit/
Alias             /axkit/  @l_prefix@/share/axkit/
DocumentRoot      @l_prefix@/lib/axkit
DirectoryIndex    index.xml index.html
PerlModule        AxKit
<Directory        "@l_prefix@/share/axkit">
    Options       -Indexes +FollowSymLinks
    AllowOverride All
    Order         allow,deny
    Allow         from all

    #   AxKit handles .xml, .xsp, .axp (axpoint) and .dkb (docbook) files
    <Files *.xml>
	    SetHandler axkit
    </Files>
    <Files *.xsp>
	    SetHandler axkit
    </Files>
    <Files *.axp>
	    SetHandler axkit
    </Files>
    <Files *.dkb>
	    SetHandler axkit
    </Files>

    #   text files handled by default-handler
    AddHandler default-handler .txt
    AddHandler default-handler .html

    #   maximum debugging
    AxLogDeclines On
    AxDebugLevel 10

    #   specify the stylesheet to be executed on errors
    #AxAddStyleMap    text/xsl Apache::AxKit::Language::LibXSLT
    AxAddStyleMap     text/xsl Apache::AxKit::Language::Sablot
    AxErrorStylesheet text/xsl /axkit/stylesheets/error.xsl

    #   apply output translations
    AxTranslateOutput On
    AxGzipOutput      On

    #   caching
    AxCacheDir @l_prefix@/var/axkit/cache/
    #AxNoCache On
</Directory>

