Forum OpenACS Q&A: Installation Problems: "Document Contained No Data"

I am getting an error that prevents me from using OpenACS.

Netscape returns: Document Contained no data. Another browser (kfm): Confirms this, it asks "Open with...?", when I answer emacs the file is indeed empty.

I have created a little /web/server1/www/index.html file so there is no tcl involved here.

I am running on localhost, not connected to the internet.

I haven't edited server1.tcl so there is still a reference to "somenerd@localhost.localdomain".

Postgres looks happy, no problem loading the tables.

I've pinged localhost OK.

I've included these files:

/etc/hosts
/web/server1/parameters/nsd.tcl
/web/server1/parametere/log/server.log (extracts)
/web/.../access.log (empty!)

Any help is greatly appreciated, I hope this is a simple problem... but not too simple :o) .

thanks in advance ...

Andy

================
/etc/hosts
================
 127.0.0.1 localhost  localhost.localdomain
 127.0.0.1 server1            /* AND VARIOUS COMBINATIONS OF */



================
  access.log
================


================
  server.log
================
... 
Notice: accepting requests on localhost:80
...
Error: gethostbyname failed: temp error try again
Error: nsd.geturl:http://info.webcrawler.com/... Connection refused
Error: failed sending mail to somenerd@localhost.localdomain
... 
/* WHAT ARE THESE ERRORS, ARE THEY CRITICAL*/

================
 nsd.tcl
================
ns_log notice "nsd.tcl: starting to read config file..."

set httpport               80
set httpsport              8443

set host                   [ns_info hostname]
set address                [ns_info address]

set server                 "server1"
set servername             "openacs"

set homedir                [file dirname [ns_info config]]
set bindir                 [file dirname [ns_info nsd]]

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

# nsssl: Only loads if keyfile.pem and certfile.pem exist.
set sslkeyfile             ${homedir}/servers/
${server}/modules/nsssl/keyfile.pem
set sslcertfile            ${homedir}/servers/
${server}/modules/nsssl/certfile.pem

#
# Global server parameters
#
ns_section "ns/parameters"
   ns_param   home            $homedir
   ns_param   debug           false
   ns_param   MailHost        localhost
   ns_param   ServerLog       ${homedir}/log/server.log
   ns_param   LogRoll         on
#
# 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.
#
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"
#
# Tcl Configuration
#
ns_section "ns/server/${server}/tcl"
   ns_param autoclose "on"
   ns_param debug     "false"
   ns_param library   "/web/${server}/tcl"

############################################################
# Server-level configuration
############################################################
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 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 enabletclpages  true       ;# Parse tcl files in pageroot 
(dangerous)

   ns_param NotFoundResponse            "/global/file-not-found.html" 
   ns_param ServerBusyResponse          "/global/busy.html"
   ns_param ServerInternalErrorRepsonse "/global/error.html"
   ns_param ForbiddenResponse           "/global/forbidden.html"
   ns_param UnauthorizedRepsonse        "/global/unauthorized.html"

   # 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 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     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/${server}/adp/parsers"
   ns_param   adp             ".adp"

#
# Socket driver module (HTTP)  -- nssock
#
ns_section "ns/server/${server}/module/nssock"
   ns_param port            $httpport
   ns_param hostname        $host
   ns_param address         $address

#
# Socket driver module (HTTPS) -- nsssl. nsssl does not load unless 
sslkeyfile/sslcertfile exist (above).
#
ns_section "ns/server/${server}/module/nsssl"
   ns_param   port            $httpsport
   ns_param   hostname        $host
   ns_param   address         $address
   ns_param   keyfile         $sslkeyfile
   ns_param   certfile        $sslcertfile

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

ns_section "ns/db/pools"
   ns_param main "OpenACS Main Pool"<
   ns_param log  "OpenACS Log Pool"
   ns_param subquery "OpenACS Subquery Pool"   

ns_section "ns/db/pool/main"
   ns_param Driver postgres
   ns_param Connections 5
   ns_param DataSource localhost::blade2
   ns_param User nsadmin
   ns_param Password ""
   ns_param Verbose off
   ns_param LogSQLErrors on
   ns_param ExtendedTableInfo on
  #ns_param MaxOpen 10000000 
  #ns_param MaxIdle 10000000

ns_section "ns/db/pool/log"
   ns_param Driver postgres
   ns_param Connections 5
   ns_param DataSource localhost::blade2
   ns_param User nsadmin
   ns_param Password ""
   ns_param Verbose on
   ns_param LogSQLErrors on
   ns_param ExtendedTableInfo on
  #ns_param MaxOpen 10000000 
  #ns_param MaxIdle 10000000

ns_section "ns/db/pool/subquery"
   ns_param Driver postgres
   ns_param Connections 2
   ns_param DataSource localhost::blade2
   ns_param User nsadmin
   ns_param Password ""
   ns_param Verbose on
   ns_param LogSQLErrors on
   ns_param ExtendedTableInfo on
  #ns_param MaxOpen 10000000 
  #ns_param MaxIdle 10000000

ns_section "ns/server/${server}/db"
   ns_param Pools "*"
   ns_param DefaultPool "main"


######################################################################
###############
# Control port -- nscp
#
# nscp: Uncomment the sample password and log in with "nsadmin", 
password "x",
#       type "ns_crypt newpassword salt" and put the new encrypted 
string below.
######################################################################
###############

# CHECK: What is the control post?
#set nscp_user ;#nsadmin:t2GqvvaiIUbF2:"  user="nsadmin", pw="x"
set nscp_user ""

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_section "ns/server/${server}/module/nscp"
   ns_param   port            9999
   ns_param   address         "127.0.0.1" ;# LOCALHOST IS RECOMMENDED

ns_section "ns/server/${server}/module/nscp/users"
   ns_param   user            $nscp_user


#
# Access log -- nslog
#
ns_section "ns/server/${server}/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

#
# Modules to load
#
ns_section "ns/server/${server}/modules"
   ns_param   nssock          ${bindir}/nssock.so
   ns_param   nslog           ${bindir}/nslog.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."
}
ns_log notice "nsd.tcl: finished reading config file."

source /web/${server}/parameters/${server}.tcl

ns_log notice "nsd.tcl: finished reading SERVER1 file."
Hi Andrew! did you change the name of your /web/server1/parameters/nsd.tcl to /web/server1/parameters/server1.tcl?, remember to change nsd --> server1 in your case, I guess you are using nsd.tcl that is in site as example http://new.openacs.org/doc/openacs/nsd.txt to run your aolserver, for it is working ok, hope this help you ;)
Hi Rocael,
no, as I understand (and tell me if I am wrong), I have the following:
/web/server1/parameters/nsd.tcl 
/web/server1/parameters/server1.tcl
nsd.tcl gets loaded (specified in the parameters) by AOLserver on startup and at the end of this file server1.tcl is 'sourced'. So I have two files, one called nsd.tcl and one called server1.tcl .

Yes, I am using the example nsd.tcl ...

Andy

Try changing the line:
set host                   [ns_info hostname]
to:
set host                   localhost
Also, how are you starting AOLserver?
Roberto, thanks

changing the line to:

  set host localhost
worked. Can you, for the bonus point, explain why the original line presumably works for some systems and not mine?
Yes, please do explain why. I have had the same problem which has baffled me completely given that I have managed to get the ACS running on a previous setup. Is there a bug with ns_info hostname?

Thanks