Forum OpenACS Q&A: Response to ns_db not enabled
My nsd.tcl looks like this:
# # nsd.tcl -- The AOLserver Startup Script # # This is a Tcl script that is sourced when AOLserver starts up. # A detailed reference is in "doc/config.txt". # ns_log notice "nsd.tcl: starting to read config file..." # # Set some Tcl variables that are commonly used throughout this file. # set httpport 8000 set httpsport 8443 #set hostname [ns_info hostname] #set address [ns_info address] set hostname "localhost" set address 127.0.0.1 set servername "server1" set serverdesc "AOL3 Test Server" set homedir [file dirname [ns_info config]] set bindir [file dirname [ns_info nsd]] set pageroot /webroot/test/acspg/www set directoryfile index.adp,index.html,index.htm,index.tcl # nsssl: Only loads if keyfile.pem and certfile.pem exist. set sslkeyfile ${homedir}/servers/${servername}/modules/nsssl/keyfile.pem set sslcertfile ${homedir}/servers/${servername}/modules/nsssl/certfile.pem # nscp: Uncomment the sample password and log in with "nsadmin", password "x",# type "ns_crypt newpassword salt" and put the new encrypted string below. #set nscp_user "" set nscp_user "web:t2GqvvaiIUbF2:" # sample user="nsadmin", pw="x" # # Global server parameters # ns_section "ns/parameters" ns_param home $homedir ns_param debug false # # Thread library (nsthread) parameters # ns_section "ns/threads" ns_param mutexmeter true ;# measure lock contention #ns_param stacksize [expr 128*1024] ;# Per-thread stack size for hungry C modules. # # MIME types. # # Note: AOLserver already has an exhaustive list of MIME types, but in # case something is missing you can add it here. # ns_section "ns/mimetypes" ns_param default "*/*" ;# MIME type for unknown extension ns_param noextension "*/*" ;# MIME type for missing extension #ns_param ".xls" "application/vnd.ms-excel" # # Create pools for ACS # ns_section "ns/db/pool/main" ns_param Driver postgres ns_param Connections 4 ns_param MaxOpen 1000000000 ns_param MaxIdle 1000000000 ns_param DataSource localhost::test ns_param User web ns_param Verbose Off ns_param LogSQLErrors Off ns_param ExtendedTableInfo On ns_section "ns/db/pool/subquery" ns_param Driver postgres ns_param Connections 4 ns_param MaxOpen 1000000000 ns_param MaxIdle 1000000000 ns_param DataSource localhost::test ns_param User web ns_param Verbose Off ns_param LogSQLErrors Off ns_param ExtendedTableInfo On ns_section "ns/db/pool/log" ns_param Driver postgres ns_param Connections 4 ns_param MaxOpen 1000000000 ns_param MaxIdle 1000000000 ns_param DataSource localhost::test ns_param User web ns_param Verbose Off ns_param LogSQLErrors Off ns_param ExtendedTableInfo On # # Stuff for Postgresql # ns_section "ns/db/drivers" ns_param postgres ${bindir}/postgres.so ns_section "ns/db/driver/postgres" ns_param datestyle iso ############################################################ # # Server-level configuration # # There is only one server in AOLserver, but this is helpful when multiple # servers share the same configuration file. This file assumes that only # one server is in use so it is set at the top in the "server" Tcl variable. # Other host-specific values are set up above as Tcl variables, too. # ns_section "ns/servers" ns_param $servername $serverdesc # # Server parameters # ns_section "ns/server/${servername}" ns_param directoryfile $directoryfile ns_param pageroot $pageroot ns_param globalstats true ;# Enable built-in statistics ns_param urlstats true ;# Enable URL statistics ns_param maxurlstats 1000 ;# Max number of URL's to do stats on ns_param enabletclpages true ;# Parse tcl files in pageroot (dangerous) # Directory listings -- use an ADP or a Tcl proc to generate them. #ns_param directoryadp $pageroot/dirlist.adp ;# Choose one or the other #ns_param directoryproc _ns_dirlist ;# ...but not both! #ns_param directorylisting simple ;# Can be simple or fancy # # ADP (AOLserver Dynamic Page) configuration # ns_section "ns/server/${servername}/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 false ;# Allow Tclpro debugging with "?debug" # ADP special pages #ns_param errorpage ${pageroot}/errorpage.adp ;# Pretty-print ADP scripting errors # # ADP custom parsers -- see adp.c # ns_section "ns/server/${servername}/adp/parsers" ns_param adp ".adp" # # TCL # ns_section "ns/server/${servername}/tcl" ns_param Library /webroot/test/acspg/tcl # # Socket driver module (HTTP) -- nssock # ns_section "ns/server/${servername}/module/nssock" ns_param port $httpport ns_param hostname $hostname ns_param address $address # # Socket driver module (HTTPS) -- nsssl # # nsssl does not load unless sslkeyfile/sslcertfile exist (above). # ns_section "ns/server/${servername}/module/nsssl" ns_param port $httpsport ns_param hostname $hostname ns_param address $address ns_param keyfile $sslkeyfile ns_param certfile $sslcertfile # # Control port -- nscp # # nscp does not load unless nscp_user is a valid user. # ns_section "ns/server/${servername}/module/nscp" ns_param port 9999 ns_param address "127.0.0.1" ;# LOCALHOST IS RECOMMENDED ns_section "ns/server/${servername}/module/nscp/users" ns_param user $nscp_user # # Access log -- nslog # ns_section "ns/server/${servername}/module/nslog" ns_param rolllog true ;# Should we roll log? ns_param rollonsignal true ;# Roll log on SIGHUP ns_param rollhour 0 ;# Time to roll log ns_param maxbackup 5 ;# Max number to keep around when rolling # # CGI interface -- nscgi # ns_section "ns/server/${servername}/module/nscgi" #ns_param map "GET /cgi /usr/local/cgi" #ns_param map "POST /cgi /usr/local/cgi" # # Set up db pools for ACS # ns_section "ns/server/${servername}/db" ns_param Pools "*" ns_param DefaultPool "main" ns_section "ns/parameters" ns_param auxconfigdir /webroot/test/acspg/parameters # # Modules to load # ns_section "ns/server/${servername}/modules" ns_param nssock ${bindir}/nssock.so ns_param nslog ${bindir}/nslog.so ns_param nscgi ${bindir}/nscgi.so #ns_param nsperm ${bindir}/nsperm.so ## nsssl: loads only if requisite files already exist (see top of this file). if { [file exists $sslcertfile] && [file exists $sslkeyfile] } { ns_param nsssl ${bindir}/nsssle.so } else { ns_log warning "nsd.tcl: nsssl not loaded because key/cert files do not exist." } # nscp: loads only if nscp_user is set (see top of this file). if { $nscp_user != "" } { ns_param nscp ${bindir}/nscp.so } else { ns_log warning "nsd.tcl: nscp not loaded because user/password is not set." } ns_log notice "nsd.tcl: finished reading config file."