Version 0 of Rivet - OpenBsd 4.9

Updated 2011-09-27 10:35:34 by wowbagger

PWQ Septempber 2011

I have installed Apache Rivet on openBSD. This may have been explained before but the apache email archives are not searchable so I describe here for others to reference.

Extra steps are involved due to apache running in chroot environment.

Configure options:

   ./configure --with-apache=/var/www/ --with-tcl=/usr/local/lib/tcl/tcl8.5/ 
               --with-apache-include=/home/ports/pobj/apr-1.2.11-mt/apr-1.2.11/include/ 
               --with-apache-version=1

Notes:

  1. Get default tcl8.5 package of build from ports standard flavor. Rivet will not load into apache if threads are compiled in.
  2. edit src/Makefile and remove -v option from rm command as it is not supported in openBSD.
  3. makedir -p /var/www/var and create link /var/www/var/www to '..
  4. makedir -p /var/www/usr/local/lib/tcl/tcl8.5 and copy recursive from /usr/local/lib/tcl/tcl8.5
  5. cp other relevant libraries (such as libtcl85.so.*) to /var/www/usr/local/lib. Use ldd to find dependent libraries.

Rivet Config

Put options into /var/www/conf/modules/rivet.conf. It will be autoloaded by apache.

LoadModule rivet_module /usr/lib/apache/modules/mod_rivet.so
AddType application/x-httpd-rivet .rvt
AddType application/x-rivet-tcl .tcl

AddType 'application/x-httpd-rivet;charset=utf-8' rvt

RivetServerConf ChildInitScript "package require DIO"

RivetServerConf ChildInitScript \
        "::DIO::handle Mysql DIO -user ???? -pass ???? -db ???"

RivetServerConf ChildInitScript \
        "package require Session; Session SESSION -debugMode 0"

Replace ??? with data specific to your database. This line and line following are only needed if you use sessions.

Misc

I noticed a couple of errors in the current rivet manual. The commands array and foreach take their arguments in the opposite order to that shown in the manual.

There could be more changes I made, check your /var/www/logs/error_log to see messages from Rivet as to what problems are detected.