Index: openacs-4/packages/acs-core-docs/www/aolserver.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/aolserver.html,v diff -u -r1.45 -r1.46 --- openacs-4/packages/acs-core-docs/www/aolserver.html 17 Jul 2006 05:38:31 -0000 1.45 +++ openacs-4/packages/acs-core-docs/www/aolserver.html 7 Jun 2008 20:28:48 -0000 1.46 @@ -1,4 +1,5 @@ -Install AOLserver 3.3oacs1

Install AOLserver 3.3oacs1

by Vinod Kurup

+ +Install AOLserver 3.3oacs1

Install AOLserver 3.3oacs1

by Vinod Kurup

OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.

We recommend the use of AOLserver 4.0.1 or later. These instructions are retained as a resource.

@@ -8,8 +9,8 @@ instead of from source. If you have the time to debug these and submit what you did, that's great, but if not, you should stick to installing from source. -

  1. Unpack the Aolserver tarball.�Download the aolserver tarball and unpack it.

    [root root]# cd /usr/local/src
    -[root src]# wget --passive http://uptime.openacs.org/aolserver-openacs/aolserver3.3oacs1.tar.gz
    +  

    1. Unpack the Aolserver tarball.�Download the aolserver tarball and unpack it.

      [root root]# cd /usr/local/src
      +[root src]# wget --passive http://uptime.openacs.org/aolserver-openacs/aolserver3.3oacs1.tar.gz
       --15:38:08--  http://uptime.openacs.org/aolserver-openacs/aolserver3.3oacs1.tar.gz
                  => `aolserver3.3oacs1.tar.gz'
       Resolving uptime.openacs.org... done.
      @@ -20,41 +21,41 @@
       100%[====================================>] 3,858,074     66.56K/s    ETA 00:00
       
       15:39:05 (66.56 KB/s) - `aolserver3.3oacs1.tar.gz' saved [3858074/3858074]
      -[root src]# tar xzf aolserver3.3oacs1.tar.gz
      +[root src]# tar xzf aolserver3.3oacs1.tar.gz
       [root src]#
       cd /usr/local/src
       wget --passive http://uptime.openacs.org/aolserver-openacs/aolserver3.3oacs1.tar.gz
      -tar xzf aolserver3.3oacs1.tar.gz

      This section also relies on some OpenACS files, which you can get with the section called “Unpack the OpenACS tarball”.

    2. Compile AOLserver.�Compile and install AOLserver. First, prepare the installation directory and the source code. The message about BUILD-MODULES can be ignored.

      root@yourserver root]# mkdir -p /usr/local/aolserver
      -[root root]# cd /usr/local/src/aolserver
      -[root aolserver]# ./conf-clean
      +tar xzf aolserver3.3oacs1.tar.gz

      This section also relies on some OpenACS files, which you can get with Section�, “Unpack the OpenACS tarball”.

    3. Compile AOLserver.�Compile and install AOLserver. First, prepare the installation directory and the source code. The message about BUILD-MODULES can be ignored.

      root@yourserver root]# mkdir -p /usr/local/aolserver
      +[root root]# cd /usr/local/src/aolserver
      +[root aolserver]# ./conf-clean
       cat: BUILD-MODULES: No such file or directory
       Done.
       [root aolserver]#mkdir -p /usr/local/aolserver
       cd /usr/local/src/aolserver
       ./conf-clean

      If you are using Oracle, edit - conf-db and change - postgresql to - oracle, or to the word - both if you want both drivers + conf-db and change + postgresql to + oracle, or to the word + both if you want both drivers installed. In order to get nsoracle to compile, you may need to su - oracle, and then su (without the -) root to set the environment variables properly. -

      conf-inst should contain the +

      conf-inst should contain the location where AOLserver is to be installed. Overwrite the - tarball's default value with our default value, /usr/local/aolserver:

      [root aolserver]# echo "/usr/local/aolserver" > conf-inst
      -[root aolserver]#

      conf-make should contain the + tarball's default value with our default value, /usr/local/aolserver:

      [root aolserver]# echo "/usr/local/aolserver" > conf-inst
      +[root aolserver]#

      conf-make should contain the name of the GNU Make command on your system. It defaults to - gmake. Debian users: ln -s /usr/bin/make /usr/bin/gmake.

      Set an environment variable that the nspostgres driver + gmake. Debian users: ln -s /usr/bin/make /usr/bin/gmake.

      Set an environment variable that the nspostgres driver Makefile needs to compile correctly and run - conf, which compiles + conf, which compiles AOLserver, the default modules, and the database driver, and installs them.

      Debian users, see warning above, but if you do use apt-get for AOLserver 3.3+ad13 and postgresql from apt-get may need to - make these symlinks: ln -s - /usr/include/postgresql/ /usr/include/pgsql - and ln -s /usr/lib/postgresql /usr/local/pgsql)

      [root aolserver]# export POSTGRES=/usr/local/pgsql; ./conf
      +          make these symlinks: ln -s
      +          /usr/include/postgresql/ /usr/include/pgsql
      +          and ln -s /usr/lib/postgresql /usr/local/pgsql)

      [root aolserver]# export POSTGRES=/usr/local/pgsql; ./conf
       Building in /usr/local/aolserver
       with the following modules:
       aolserver
      @@ -76,27 +77,27 @@
       ==================================================================
       Done Building Sat Mar  8 10:31:35 PST 2003
       [root aolserver]# 

      - This takes about 5 minutes. It builds aolserver, several modules, and the database driver. (Upgraders, note that the postgres database driver has changed from postgres.so to nspostgres.so). All of the results are logged to files in /usr/local/src/aolserver/log. If you run into problems running AOLserver, check these files for build errors.

    4. Add a database-specific wrapper script.�This script + This takes about 5 minutes. It builds aolserver, several modules, and the database driver. (Upgraders, note that the postgres database driver has changed from postgres.so to nspostgres.so). All of the results are logged to files in /usr/local/src/aolserver/log. If you run into problems running AOLserver, check these files for build errors.

    5. Add a database-specific wrapper script.�This script sets database environment variables before starting AOLserver; this allows the AOLserver instance can communicate with the database. There is one script each for Oracle and PostgreSQL. They don't conflict, so if you plan - to use both databases, install both.

      • Oracle

        [root aolserver]# cd /usr/local/aolserver/bin
        -[root bin]# cp /var/tmp/openacs-5.2.3rc1/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
        -[root bin]# chmod 750 nsd-oracle
        +	  to use both databases, install both.

        • Oracle

          [root aolserver]# cd /usr/local/aolserver/bin
          +[root bin]# cp /var/tmp/openacs-5.4.2/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
          +[root bin]# chmod 750 nsd-oracle
           [root bin]#
           cd /usr/local/aolserver/bin
          -cp /var/tmp/openacs-5.2.3rc1/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
          -chmod 750 nsd-oracle
        • PostgreSQL

          [root aolserver]# cd /usr/local/aolserver/bin
          -[root bin]# cp /var/tmp/openacs-5.2.3rc1/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
          -[root bin]# chmod 755 nsd-postgres
          +cp /var/tmp/openacs-5.4.2/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
          +chmod 750 nsd-oracle
        • PostgreSQL

          [root aolserver]# cd /usr/local/aolserver/bin
          +[root bin]# cp /var/tmp/openacs-5.4.2/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
          +[root bin]# chmod 755 nsd-postgres
           [root bin]#
           cd /usr/local/aolserver/bin
          -cp /var/tmp/openacs-5.2.3rc1/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
          +cp /var/tmp/openacs-5.4.2/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
           chmod 755 nsd-postgres
      • Install tDOM.�Download the tDOM tarball, unpack it, adjust the configuration file to match our patched - distribution of aolserver, and compile it.

        [root root]# cd /usr/local/src
        -[root src]# wget --passive http://www.tdom.org/tDOM-0.7.8.tar.gz
        +        distribution of aolserver, and compile it.

        [root root]# cd /usr/local/src
        +[root src]# wget --passive http://www.tdom.org/tDOM-0.7.8.tar.gz
         --16:40:58--  http://www.tdom.org/tDOM-0.7.8.tar.gz
                    => `tDOM-0.7.8.tar.gz'
         Resolving www.tdom.org... done.
        @@ -108,35 +109,35 @@
         
         16:41:04 (138.06 KB/s) - `tDOM-0.7.8.tar.gz' saved [826613/826613]
         
        -[root src]# tar xzf tDOM-0.7.8.tar.gz
        -[root src]# cd tDOM-0.7.8/unix
        +[root src]# tar xzf tDOM-0.7.8.tar.gz
        +[root src]# cd tDOM-0.7.8/unix
         [root unix]#
         cd /usr/local/src
         wget --passive http://www.tdom.org/tDOM-0.7.8.tar.gz
         tar xzf tDOM-0.7.8.tar.gz
         cd tDOM-0.7.8/unix 

        Edit the file CONFIG and change this section:

        # ----------------------------------------------------
        -# aolsrc="/usr/src/aolserver-3.4"
        +# aolsrc="/usr/src/aolserver-3.4"
         # ../configure --enable-threads --disable-tdomalloc \
         #   --with-aolserver=$aolsrc \
         #   --with-tcl=$aolsrc/tcl8.3.4/unix 

        to

        # ----------------------------------------------------
        -aolsrc="/usr/local/src/aolserver/aolserver"
        +aolsrc="/usr/local/src/aolserver/aolserver"
         ../configure --enable-threads --disable-tdomalloc \
           --with-aolserver=$aolsrc \
        -  --with-tcl=$aolsrc/tcl8.3.2/unix

        And configure and compile:

        [root unix]# sh CONFIG
        +  --with-tcl=$aolsrc/tcl8.3.2/unix

        And configure and compile:

        [root unix]# sh CONFIG
         creating cache ./config.cache
         checking for memmove... yes
           (many lines omitted)
         creating Makefile
         creating tdomConfig.sh
        -[root unix]# make
        +[root unix]# make
         gcc -pipe -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -DTCL_THREADS=1
         -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 
           (many lines omitted)
                   -Wl,-rpath,/usr/local/lib -o tcldomsh;\
         fi
        -[root unix]# cp libtdom0.7.8.so /usr/local/aolserver/bin/
        -[root unix]# cd /usr/local/aolserver/bin/
        -[root bin]# ln -s libtdom0.7.8.so libtdom.so
        +[root unix]# cp libtdom0.7.8.so /usr/local/aolserver/bin/
        +[root unix]# cd /usr/local/aolserver/bin/
        +[root bin]# ln -s libtdom0.7.8.so libtdom.so
         [root bin]#
         
         sh CONFIG
        @@ -146,16 +147,16 @@
         ln -s libtdom0.7.8.so libtdom.so
      • Install nsopenssl (OPTIONAL)

      • Install Full Text Search with OpenFTS (OPTIONAL)

      • Install nspam (OPTIONAL)

      • Test AOLserver.�In order to test AOLserver, we'll run it using the sample-config.tcl file provided in the AOLserver distribution, - under the nobody user and web + under the nobody user and web group. The sample-config.tcl configuration writes to the default log locations, so we need to give it permission to do so - or it will fail. Grant the web + or it will fail. Grant the web group permission to write to - /usr/local/aolserver/log and - /usr/local/aolserver/servers.

        [root root]# cd /usr/local/aolserver
        -[root aolserver]# chown -R root.web log servers
        -[root aolserver]# chmod -R g+w log servers
        -[root aolserver]# ls -l
        +      /usr/local/aolserver/log and
        +      /usr/local/aolserver/servers.

        [root root]# cd /usr/local/aolserver
        +[root aolserver]# chown -R root.web log servers
        +[root aolserver]# chmod -R g+w log servers
        +[root aolserver]# ls -l
         total 32
         drwxr-sr-x    2 root     root         4096 Mar  8 12:57 bin
         drwxr-xr-x    3 root     root         4096 Mar  8 10:34 include
        @@ -170,12 +171,12 @@
         chown -R root.web log servers
         chmod -R g+w log servers
         ls -l

        Note: AOLserver4.x does not include a default start page, so we create one for this test. Type - echo "Welcome to AOLserver" > /usr/local/aolserver40r8/servers/server1/pages/index.html + echo "Welcome to AOLserver" > /usr/local/aolserver40r8/servers/server1/pages/index.html

        Now, we'll run a quick test to ensure AOLserver is running correctly. We'll use the sample config file provided with AOLserver. This file will attempt to guess your IP address and hostname. It will then start up the server at port 8000 of that - IP address.

        [root aolserver]# ./bin/nsd -t sample-config.tcl -u nobody -g web
        +          IP address.

        [root aolserver]# ./bin/nsd -t sample-config.tcl -u nobody -g web
         [root aolserver]# [08/Mar/2003:15:07:18][31175.8192][-main-] Notice: config.tcl: starting to read config file...
         [08/Mar/2003:15:07:18][31175.8192][-main-] Warning: config.tcl: nsssl not loaded -- key/cert files do not exist.
         [08/Mar/2003:15:07:18][31175.8192][-main-] Warning: config.tcl: nscp not loaded
        @@ -184,32 +185,32 @@
         config file.

        The first warning, about nsssl, can be ignored. We won't be using nsssl; we'll be using nsopenssl instead, and we haven't fully configured it yet. The nscp warning refers to the fact that, without a user and password in the config file, the administrative panel of AOLserver won't load. We don't plan to use it and can ignore that error as well. Any other warning or error is unexpected and probably a problem.

        Test to see if AOLserver is working by starting - Mozilla or - Lynx on the same + Mozilla or + Lynx on the same computer and surfing over to your web page. If you browse from another computer and the sample config file didn't guess your hostname or ip correctly, you'll get a false negative test. -

        [root aolserver]# lynx localhost:8000

        +

        [root aolserver]# lynx localhost:8000

        - You should see a "Welcome to AOLserver" page. If this + You should see a "Welcome to AOLserver" page. If this doesn't work, try going to - http://127.0.0.1:8000/. If this + http://127.0.0.1:8000/. If this still doesn't work, check out the Troubleshooting AOLserver section below. Note that you will not be able to browse to the web page from another machine, because AOLserver is only listening to the local address. -

        Shutdown the test server:

        [root aolserver]# killall nsd
        +        

        Shutdown the test server:

        [root aolserver]# killall nsd
         [root aolserver]#

        - The killall command will kill - all processes with the name nsd, + The killall command will kill + all processes with the name nsd, but clearly this is not a good tool to use for managing your services in general. We cover this topic in the Keep AOLserver alive section.

      • Troubleshooting.�If you can't view the welcome page, it's likely there's a problem with your server configuration. Start by viewing your AOLserver log, which is in - /usr/local/aolserver/log/server.log. + /usr/local/aolserver/log/server.log. You should also try to find lines of the form:

         [01/Jun/2000:12:11:20][5914.4051][-nssock-] Notice: nssock: listening on http://localhost.localdomain:8000 (127.0.0.1:8000)
        @@ -218,12 +219,12 @@
               If you can find these lines, try entering the URL the server is
               listening on. If you cannot find these lines, there must be an error
               somewhere in the file. Search for lines beginning with the word
        -      Error instead of
        -      Notice.
        +      Error instead of
        +      Notice.
         
             

        - The sample-config.tcl file grabs + The sample-config.tcl file grabs your address and hostname from your OS settings.

        @@ -233,7 +234,7 @@
               If you get an error that nssock can't get the requested address, you
               can set these manually. If you type 0.0.0.0, AOLserver will try to
               listen on all available addresses.  Note:
        -      ns_info address doesn't appear
        +      ns_info address doesn't appear
               to be supported in current versions of AOLserver.