Code Search for Developers
 
 
  

INSTALL from AlphaMail at Krugle


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

AlphaMail

AlphaMail is an accelerated web mail interface with a C++ middleware layer that is more effective than an IMAP proxy which is a highly scalable (10k+ users). The interface includes modern features, Section 508 compliance, and universal browser support.

Project homepage: http://sourceforge.net/projects/alphamail
Programming language(s): C++,Java,JavaScript,Perl
License: other

  bin/
    configure_apache.pl
  conf/
    README
    alphamail.conf
    apache.conf
    duckmail.conf
    init.pl
    log4perl.conf
  experiments/
    html/
      blue.css
      d.css
      encoding.html
      encoding.pl
      index.html
      red.css
      yellow.css
    jstests/
      data1.html
      data2.html
      droptarget.js
      droptarget_test.html
      field_completion.html
      server_command.html
      table_edit.html
      test.html
      transparentpixel.gif
      wz_dragdrop.js
      wz_dragdrop.zip
      wz_tooltip.js
      wz_tooltip.zip
    perl/
      html_purify.pl
      imap.pl
      imap_cache_test.pl
      ispell.pl
      middleware_test.pl
      mime.pl
      subexp.pl
      test.html
  htdocs/
    images/
    mail/
      addressbook/
        edit.mhtml
        import.mhtml
        import_complete.html
        import_csv.html
        import_csv_save.html
        import_fname.html
        import_imho.html
        import_lname.html
        index.html
        lists.mhtml
        process_edit.html
        process_lists.html
        process_take.html
        take.html
      settings/
        altfolder_update.html
        edit_folders.html
        folders.mhtml
        general.mhtml
        index.html
        share.mhtml
        sharing_agree.html
        signatures.mhtml
        update_folderlist.html
        update_general.html
        update_signatures.html
      viewers/
        excel.html
        html.html
        targz.html
        text.html
        word.html
        zip.html
      address_mail.html
      addresslist.mhtml
      autohandler
      check_spelling.html
      compose.html
      error.html
      first_login.html
      fix_spelling.html
      folderlist.mhtml
      footer.mhtml
      get_attachment.html
      header.mhtml
      help.html
      index.html
      logout.html
      menu.mhtml
      other_folders.html
      print.html
      process_compose.html
      process_first_login.html
      process_messages.html
      process_read_message.html
      quota.html
      quota_graph.html
      read.html
      remove_attachment.html
      renew_session.html
      sanitized.html
      share_options.html
      share_upload.html
      verify_password.html
      view_attachment.html
    static/
      rte/
      amail_icon.jpg
      amail_large.jpg
      d.css
      wick.css
      wick.js
      wz_tooltip.js
    download.html
    filevault.html
    index.html
  lib/
    AlphaMail/
    AlphaMail.pm
    IMAPAuth.pm
    ManagerFactory.pm
  notes/
    debugging
  tests/
    cache/
    interface/
    lib/
    misc/
  util/
    sandbox/
    awstats_gen
    garbage_sweeper
    logrotate.conf
  ChangeLog
  INSTALL
  LICENSE
  QUIRKS
  TODO