A listserver allows the handling of group email so that when one member of a group sends an email to the listserver it redistributes it to the whole group. Group members take responsibility to manage their list subscriptions.


If you knew that then, you will likely find a use for the Webspaces CMS listserver addon.


How it works

The heart of it is a single perl script, that takes input from the mail server, processes the email using a Mysql database, and resends it as needed. There is a locking system that prevents more that one instance running at a time, so its only useful for small organizations, i wouldn`t be using to send   more than a few hundred emails a day.



It has all the usual list settings,

  • one or more managers with priviledges to approve members, change settings, handle deferred mail, subscriber lists
  • return email confirmation of all new members, who can then subscribe and unsubscribe freely
  • members only may post, anyone may post, manager only may post.
  • Archives viewable by anyone, members, noone
  • List subject tag, footer and various other programmable fields.


Plus a handful of interesting new features:

  • a daily and weekly headlines feature, where users can chose not to receive list traffic directly, but instead get a summary with links to the archive postings
  • advanced attachment handling, whereby attachments are stripped out of the post and stored in the database server, where they can potentially by indexed, searched, metadata tagged and used to create a document management system (due in version 9).



The webpage code is in the CMS package, and the perl mailer script is in the addons package, both on the version 8 downloads page. Then:


1.   If you havent already make sure you have copied the /lists folder from the CMS package onto your webserver.

2.   Run or rerun the /admin/installer.php to make sure the lists addon is ticked, and its tables installed into the db.

2a. Edit the config section at the top of addons/

3. Copy the contents of the addons/listserver folder onto the server into /home/tasks/listserver/, then:

chown nobody:nogroup -R /home/tasks/listserver

chown nobody:nogroup -R /var/ww/html/lists/archive

  1. adjust paths for your htdocs root


4. Add cron entrys for the headlines, and one for daily stats gathering:

45 5 * * sat   /usr/b!in/perl /home/tasks/listserver/

05 6 * * *      /usr/b!in/perl perl /home/tasks/listserver/

20 3 * * *      w!get -q



At the moment you have to manually add each new list to the /etc/aliases file like so: (replace 2xhash with doublequotes)

testlist: #| /usr/bin/perl /home/tasks/listserver/

Admin login