Show INSTALL syntax highlighted
Read QUIRKS first!
There is a script in ./bin called configure_apache.pl that will set up an
apache daemon to run Alpha Mail. YOU MUST RUN THIS AS A PRIVILEGED USER. If it
fails to work for you, copy the files from the conf subdirectory and edit them
by hand, or tweak the files that the configure script outputs.
It tries to check for all dependencies as well, but I have not tried it on a
blank machine yet, so I cannot guarantee it will catch them all.
By default, the configuration outputs configuration files for a complete Apache
instance; however, the only files you really need for an exiting apache install
are alphamail.conf and init.pl. Make sure you have mod_perl loaded and properly
configured, and you should be able to simply include alphamail.conf in the
apache configuration.
If you use just the alphamail.conf, then you are responsible for configuring
the ports, IPs, etc. There are no guarantees about the suitability of the
apache configuration files generated by the configuration script. The targeted
apache is a modular (NOT monolithic) Apache 1.3.x.
SSL is required.
You must create a certificate chain file called
/etc/certificate_authorities.pem for the netxx library. Basically, this is just
a concatenation of all the pem CA files from openssl.
My Production Environment is currently an AMD 64-bit AMD Red Hat EL3 server.
The steps to prepare the system were:
1) Get the Boost libraries and bjam from boost.org.
build via their instructions
2) Get imap_webcache from http://whizzo.uoregon.edu/public/src/imap_webcache
Edit the makefile as needed, and build
3) Build and install an Apache 1.x server. The configuration for alphamail
assumes a DSO apache server (i.e. --enable-shared=max).
- Download mod_ssl, mod_perl, and apache source.
- Extract the source...i.e. /usr/local/src/apache_1.3.33,
/usr/local/src/mod_perl-1.29, /usr/local/src/mod_ssl-2.8.23
- Follow the instructions in the mod_ssl directory. My commands are:
cd mod_ssl-2.8.23
./configure --with-apache=../apache_1.3.33
CFLAGS="-I/usr/kerberos/include" SSL_BASE="SYSTEM" ./configure \
"--with-layout=Apache" \
"--prefix=/usr/local/apache" \
"--enable-shared=max" \
"--enable-module=ssl" \
"--enable-shared=ssl"
make -j3 install
cd ../mod_perl-1.29
perl Makefile.PL USE_APXS=1 WITH_APXS=/usr/local/apache/bin/apxs EVERYTHING=1
make test
make install
4) Go to alphamail, and run bin/configure.pl
- If perl modules are missing, it will report what it needs. Use the cpan
command to install them.
i.e.
bash# cpan
cpan> install Apache::SiteControl
cpan> install ...
5) Re-run bin/configure.pl if it needed packages. Answer the questions. This
will create a set of apache config files in alphamail/etc. You have two choices.
a) If you configured your own apache with mod_perl and ssl, and you wrote
your own configs, then just include etc/apache/alphamail.conf in your
existing config files.
b) If you build apache from the instructions above, you should be able to
start your apache with the apache.conf in etc/apache/apache.conf.
httpd -f alphamail/etc/apache/apache.conf
Other notes on dependencies:
netpbm-progs is needed for image icon previews
antiword is needed for word doc previews
xlhtml is needed for excel previews
links is needed for html message to text conversions
EXTERNAL VIEWER SANDBOX PROBLEMS?
=================================
All external viewers run in a sandbox (see utils/sandbox/sandbox.c), which you
specify when you run the configuration. The script tries to make sure all
dependencies are met, but you may find you need to link more files into the
sandbox in order to get things to work. Use ln(1) for this purpose.
See more files for this project here