Forum OpenACS Q&A: Re: Aolserver 4.0 with Postgres 7.2 , invalid command name "ns_db"

3) The backend.tcl

#backend 3400

#set address                  0.0.0.0
#set httpport                3400
#set httpsport                143

set bindir                    /usr/local/aolserver40r2/bin
set server                    "service3400"
set servername                ${server}
set serverroot                /var/lib/aolserver/${server}

set hostname                  skidoo
set database                  postgres
set db_name                  $server
set db_host                  localhost
set db_port                  ""
set db_user                  $server

ns_section "ns/server/${servername}/modules"
    ns_param nsdb ${bindir}/nsdb.so

set pageroot                  ${serverroot}/www
set directoryfile            index.tcl,index.adp,index.html,index.htm

# Tcl Configuration
ns_section ns/server/${server}/tcl
  ns_param  library            ${serverroot}/tcl
  ns_param  autoclose          on
  ns_param  debug              $debug

ns_section ns/servers
  ns_param  $server            $servername

# Server parameters
ns_section ns/server/${server}
  ns_param  directoryfile      $directoryfile
  ns_param  pageroot          $pageroot
  ns_param  maxconnections    5
  ns_param  maxdropped        0
  ns_param  maxthreads        5
  ns_param  minthreads        5
  ns_param  threadtimeout      120
  ns_param  globalstats        false    ;# Enable built-in statistics
  ns_param  urlstats          false    ;# Enable URL statistics
  ns_param  maxurlstats        1000    ;# Max number of URL's to do stats on
  #ns_param  directoryadp      $pageroot/dirlist.adp ;# Choose one or the other
  #ns_param  directoryproc      _ns_dirlist          ;#  ...but not both!
  #ns_param  directorylisting  fancy              ;# Can be simple or fancy

# Special HTTP pages
  ns_param  NotFoundResponse  "/global/file-not-found.html"
  ns_param  ServerBusyResponse "/global/busy.html"
  ns_param  ServerInternalErrorResponse "/global/error.html"

# ADP (AOLserver Dynamic Page) configuration
ns_section ns/server/${server}/adp
  ns_param  map                /*.adp    ;# Extensions to parse as ADP's
  #ns_param  map                "/*.html" ;# Any extension can be mapped
  ns_param  enableexpire      false    ;# Set "Expires: now" on all ADP's
  ns_param  enabledebug        $debug    ;# Allow Tclpro debugging with "?debug"
  ns_param  defaultparser      fancy
  ns_section ns/server/${server}/adp/parsers
  ns_param  fancy    ".adp"

# Database drivers
ns_section "ns/db/drivers"
  ns_param  postgres      ${bindir}/nspostgres.so

# Database Pools: This is how AOLserver  ``talks'' to the RDBMS. You need
ns_section ns/db/pools
    ns_param  ${server}pool1          "$server Pool 1"
    ns_param  ${server}pool2          "$server Pool 2"
    ns_param  ${server}pool3          "$server Pool 3"

ns_section ns/db/pool/${server}pool1
  ns_param  maxidle            1000000000
  ns_param  maxopen            1000000000
  ns_param  connections        5
  ns_param  verbose            $debug
  ns_param  extendedtableinfo  true
  ns_param  logsqlerrors      $debug
if { $database == "oracle" } {
    ns_param  driver            ora8
    ns_param  datasource        {}
    ns_param  user              $db_name
    ns_param  password          $db_password
} else {
    ns_param  driver            postgres
    ns_param  datasource        ${db_host}:${db_port}:${db_name}
    ns_param  user              $db_user
    ns_param  password          ""
}

ns_section ns/db/pool/${server}pool2
  ns_param  maxidle            1000000000
  ns_param  maxopen            1000000000
  ns_param  connections        5
  ns_param  verbose            $debug
  ns_param  extendedtableinfo  true
  ns_param  logsqlerrors      $debug
if { $database == "oracle" } {
    ns_param  driver            ora8
    ns_param  datasource        {}
    ns_param  user              $db_name
    ns_param  password          $db_password
} else {
    ns_param  driver            postgres
    ns_param  datasource        ${db_host}:${db_port}:${db_name}
    ns_param  user              $db_user
    ns_param  password          ""
}

ns_section ns/db/pool/${server}pool3
  ns_param  maxidle            1000000000
  ns_param  maxopen            1000000000
  ns_param  connections        5
  ns_param  verbose            $debug
  ns_param  extendedtableinfo  true
  ns_param  logsqlerrors      $debug
if { $database == "oracle" } {
    ns_param  driver            ora8
    ns_param  datasource        {}
    ns_param  user              $db_name
    ns_param  password          $db_password
} else {
    ns_param  driver            postgres
    ns_param  datasource        ${db_host}:${db_port}:${db_name}
    ns_param  user              $db_user
    ns_param  password          ""
}

ns_section ns/server/${server}/db
  ns_param  pools              "${server}pool1,${server}pool2,${server}pool3"
  ns_param  defaultpool        ${server}pool1

ns_section ns/server/${server}/redirects
  ns_param  404                "global/file-not-found.html"
  ns_param  403                "global/forbidden.html"

# Access log -- nslog
ns_section ns/server/${server}/module/nslog
  ns_param  debug              false
  ns_param  dev                false
  ns_param  enablehostnamelookup false
  ns_param  file              ${serverroot}/log/${server}.log
  ns_param  logcombined        true
  ns_param  extendedheaders    COOKIE
  #ns_param  logrefer          false
  #ns_param  loguseragent      false
  ns_param  maxbackup          1000
  ns_param  rollday            *
  ns_param  rollfmt            %Y-%m-%d-%H:%M
  ns_param  rollhour          0
  ns_param  rollonsignal      true
  ns_param  rolllog            true

# nsjava - aolserver
ns_section ns/server/${server}/module/nsjava
  ns_param  enablejava        off  ;# Set to on to enable nsjava.
  ns_param  verbosejvm        off  ;# Same as command line -debug.
  ns_param  loglevel          Notice
  ns_param  destroyjvm        off  ;# Destroy jvm on shutdown.
  ns_param  disablejitcompiler off
  ns_param  classpath          /usr/local/jdk/jdk118_v1/lib/classes.zip:${bindir}/nsjava.jar:${pageroot}/webmail/java/activation.jar:${pageroot}/webmail/java/mail.jar:${pageroot}/webmail/java

# PAM authentication
ns_section ns/server/${server}/module/nspam
  ns_param  PamDomain          "pam_domain"

ns_log notice "nsd.tcl: finished reading service3400 config file."