Home Wendy
Web engine software

Wendy Home Page / Docs / Installation manual
 download   mods   docs   contact 
  This document describes generic Wendy installation process.

System Requirements

Any system, which can support:

  • Apache 2
  • mod_perl 2
  • PostgreSQL v7.4 or higher
  • Perl 5.8

Wendy depends on some extra Perl modules. Following Perl modules must be available:

URI
Apache::DBI
Apache2::*
MIME::Base64
XML::Quote
File::Util
File::Touch
    Cache::Memcached
CGI
CGI::Cookie
Crypt::SSLeay
Data::Validate::URI
File::Basename
Socket
    DBD::Pg
DBI
Digest::MD5
Fcntl
File::Spec
Cwd
    File::Temp
HTTP::Headers
HTTP::Request::Common
LWP::UserAgent
MIME::Types

All this great stuff can be acquired at CPAN for free :)

Prepare Database

Execute as PostgreSQL system user:

 
$ createuser -S -D -R wendy
$ createdb -E UTF8 -O wendy wendysdb
$ psql -d template1 -c "alter user wendy with password 'itsme'"

Check DB connectivity:

 
$ psql -U wendy -d wendysdb -h 127.0.0.1
<enter password>
wendysdb=> \q

Configure Wendy

Now, go to temp directory, download and unpack Wendy package. Execute ./configure-wendy.pl, and follow instructions on the screen. After that:

 
$ cd wendy/misc
$ psql -U wendy -d wendysdb -h localhost
wendysdb=> \i wendyinit.sql
(watch output, no errors should occur)
wendysdb=> \q

Copy Files

Copy Wendy directory to place, as you specified during configuration. For example, if we intend to install Wendy to /var/www/wendy:

 
# cp -r wendy /var/www

Configure Apache / mod_perl

Look into wendy/misc directory, there you will find corrected Apache virtual host configuration file:

 
NameVirtualHost *
<VirtualHost *>
	ServerAdmin webmaster@localhost
	
	DocumentRoot /var/www/wendy/var/hosts/www.example.com/htdocs
	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>

ServerName www.example.com

# Wendy will serve all requests
 <Location />
    SetHandler perl-script
    PerlHandler Wendy
    PerlSendHeader On
    PerlOptions +ParseHeaders
    allow from all
  </Location>

# Location /static/ for fast static data output
  <Location /static/>
    SetHandler default-handler
  </Location>

  ErrorLog /var/log/apache2/error.log

  LogLevel warn
  CustomLog /var/log/apache2/access.log combined
  ServerSignature On

</VirtualHost>

mod_perl configuration file:

 
LoadModule perl_module /usr/lib/apache2/modules/mod_perl.so
PerlModule Apache::DBI
PerlPostConfigRequire /var/www/wendy/misc/startup.pl

startup.pl contents:

 
#!/usr/bin/perl

# Push Wendy path to @INC:
use lib '/var/www/wendy/lib';

1;

After that you may try to start Apache, and open http://www.example.com/. Admin interface is located at http://www.example.com/admin/.

Errors

Look into Apache error_log if something is wrong.

eugene kuzin, 2007-2011