Forum OpenACS Q&A: aolserver and IPs?
I have a problem and I believe that somebody in the commmunity can
help me.
I have one server with 4 IPs assignated, the address of the box is
209.217.53.170 and I'm running OpenACS there in port 8000, now I want
to run another service with other IP, lets say 209.217.53.171, I put
in my myservice.tcl file the new IP address but I got Error: nsssock:
" Cannot assign requested address', What I'm doing wrong and what
should I do??
thank you for your answers!
You did not mention what operating system or what version AOLserver you are using. That information will help alot.
[ns/server/standard/module/nssock] timeout=120 Address=209.217.53.170 ^^^^^^^^^^^^^^^^^^^^^^change->209.217.53.171 Hostname=www.your.page.com Port=8000Voila!
you are right, I forgot to post somethings,
I'm running RedHat6.2 and aolserver 3.2+ad10
Also I don't know really if my system know about the 4 IPs, how can I check it and how can I configure my system to know about the IPs if it doesn't know yet?
Other question that I have is if my domain is www.mydomain.com, my aolserver will listen at:
www.mydomain.com,
mydomain.com,
209.217.53.170
it will listen to all of this by default or I need to configure it manually?
thanks for your help! :)
you can check the system running at http://aux-209-217-53-170.oklahoma.net:8000
here is the file: OPEN1.TCL
ns_log notice "nsd.tcl: starting to read config file..."
#
# If httpport is set to 80, you'll have to start AOLserver as root and pass the user
# AOLserver will run as in the command line. (e.g. ./nsd -u nsadmin -g nsadmin -t ../nsd.tcl)
# (assuming you're starting AOLserver from the {aolserverdir}/bin directory.
set httpport 8000
set httpsport 443
# Make sure your /etc/hostname is setup right, with your full domain. If you want AOLserver
# to listen to www.foobar.com instead of foobar.com then hard code the appropriate domain
# in the line below (e.g. set hostname www.foobar.com).
#
set hostname [ns_info hostname]
set address [ns_info address]
#
# You can name your server whatever you want, but you'll need a directory with that
# name under {aolserverdir}/servers/ writable by you AOLserver user.
#
# For example: if your AOLserver is in /usr/local/aolserver and your server is "server1"
# you will need a /usr/local/aolserver/servers/server1 directory.
#
set server "open1"
set servername "openacs"
#
# AOLserver's home and binary directories. Autoconfigurable.
#
set homedir [file dirname [ns_info config]]
set bindir [file dirname [ns_info nsd]]
#
# Where are your pages going to live ?
#
set pageroot /web/${server}/www
set directoryfile index.adp,index.tcl,index.html,index.htm
#
# nsssl: Only loads if keyfile.pem and certfile.pem exist.
# If you are using SSL, make sure you have these dirs and files (refer
# to the AOLserver docs)
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.
#
# 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''
#
# Tcl Configuration
#
ns_section "ns/server/${server}/tcl"
ns_param autoclose "on"
ns_param debug "false"
# This is where this server's private Tcl library is. All .tcl files in this directory
# are parsed when AOLserver starts. The crucial procedures used in OpenACS are
# defined through this library
#
ns_param library "/web/${server}/tcl"
############################################################
#
# 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 $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)
#
# If you want to customize AOLserver's response to things like ``Internal Server Error''
# and other HTTP responses. OpenACS comes with some in the directory www/global.
ns_param NotFoundResponse "/global/file-not-found.html"
ns_param ServerBusyResponse "/global/busy.html"
ns_param ServerInternalErrorResponse "/global/error.html"
ns_param ForbiddenResponse "/global/forbidden.html"
ns_param UnauthorizedResponse "/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 fancy ;# Can be simple or fancy
#
# 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 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 fancy ".adp"
#
# Socket driver module (HTTP) -- nssock
#
ns_section "ns/server/${server}/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/${server}/module/nsssl"
ns_param port $httpsport
ns_param hostname $hostname
ns_param address $address
ns_param keyfile $sslkeyfile
ns_param certfile $sslcertfile
#
# Database drivers
# The database driver is specified here. PostgreSQL driver being loaded.
# Make sure you have the driver compiled and put it in {aolserverdir}/bin
#
ns_section "ns/db/drivers"
ns_param postgres ${bindir}/postgres.so ;# Load PostgreSQL driver
#
# Database Pools: This is how AOLserver ``talks'' to the RDBMS. You need three for
# OpenACS: main, log, subquery. Make sure to replace ``yourdb'' and ``yourpassword''
# with the actual values for your db name and the password for it.
# AOLserver can have different pools connecting to different databases and even different
# different database servers.
#
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 ;# 5 is a good number. Increase according to your needs
ns_param DataSource localhost::open1 ;# Replace 'yourdb' with the name of your database in PG
ns_param User nsadmin ;# User and password AOLserver will use to connect
# ns_param Password "yourpassword"
ns_param Verbose Off ;# Set it to On to see all queries. Good for debugging SQL.
ns_param LogSQLErrors On
ns_param ExtendedTableInfo On
# ns_param MaxOpen 1000000000 ;# Uncommenting these two cause AOLserver to keep the
# ns_param MaxIdle=1000000000 ;# db connection open. Can be a good thing, up tp your needs.
ns_section "ns/db/pool/log"
ns_param Driver postgres
ns_param Connections 5
ns_param DataSource localhost::open1
ns_param User nsadmin
# ns_param Password "yourpassword"
ns_param Verbose On
ns_param LogSQLErrors On
ns_param ExtendedTableInfo On
# ns_param MaxOpen 1000000000
# ns_param MaxIdle=1000000000
ns_section "ns/db/pool/subquery"
ns_param Driver postgres
ns_param Connections 2
ns_param DataSource localhost::open1
ns_param User nsadmin
# ns_param Password "yourpassword"
ns_param Verbose On
ns_param LogSQLErrors On
ns_param ExtendedTableInfo On
# ns_param MaxOpen 1000000000
# ns_param MaxIdle=1000000000
ns_section "ns/server/${server}/db"
ns_param Pools "*"
ns_param DefaultPool "main"
#
# nscp: AOLserver Control Port - very useful for testing and evaluating.
# Uncomment the sample password below and do a "telnet localhost 9999"
# log in with "nsadmin", password "x", type "ns_crypt newpassword salt"
# and paste the new encrypted string below.
#
# Sample User="nsadmin", password="x"
set nscp_user "nsadmin:t2GqvvaiIUbF2:"
# nscp: loads only if nscp_user is set
#
if { $nscp_user != "" } {
ns_param nscp ${bindir}/nscp.so
} else {
ns_log warning "nsd.tcl: nscp not loaded because user/password is not set."
}
#
# Control port -- nscp
# nscp does not load unless nscp_user is a valid user.
#
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
#
# nsjava - aolserver module that embeds a java virtual machine. Needed to
# support webmail. See http://nsjava.sourceforge.net for further
# details.
#
ns_section "ns/server/acs-pg/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:/usr/local/aolserver/bin/nsjava.jar:/home/nsadmin/mirror/acs3-pg/www/webmail/java/activation.jar:/home/nsadmin/mirror/acs3-pg/www/webmail/java/mail.jar:/home/nsadmin/mirror/acs3-pg/www/webmail/java"
#
# CGI interface -- nscgi, if you have legacy stuff. Tcl or ADP files inside
# AOLserver are vastly superior to CGIs. I haven't tested these params but they
# should be right.
#
#ns_section "ns/server/${server}/module/nscgi"
# ns_param map "GET /cgi-bin/ /web/$server/cgi-bin"
# ns_param map "POST /cgi-bin/ /web/$server/cgi-bin"
# ns_param Interps CGIinterps
#ns_section "ns/interps/CGIinterps"
# ns_param .pl "/usr/bin/perl"
#
# 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
# ns_param nscgi ${bindir}/nscgi.so
# ns_param nsjava ${bindir}/libnsjava.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."
}
#
# To Source OpenACS Config File. You need a "yourservername.tcl" file in the
# OpenACS parameters dir. e.g.: say your server is "server1" then you'd need a
# file named /web/server1/parameters/server1.tcl
# (Hint: Rename ad.tcl to yourservername.tcl and edit it.)
#
source /web/${server}/parameters/${server}.tcl
ns_log notice "nsd.tcl: finished reading config file."
Type ifconfig at a command prompt to see what IPs your ethernet card is listening on.
eth0 Link encap:Ethernet HWaddr 00:D0:09:25:55:68
inet addr:209.217.53.170 Bcast:209.217.53.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2627450 errors:0 dropped:0 overruns:0 frame:0
TX packets:468950 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:3 Base address:0xc000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:13440 errors:0 dropped:0 overruns:0 frame:0
TX packets:13440 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
now what?
I also want to use this IP 209.217.53.171
bye,