Archives
Sympa maintains text archive and web archive for mailing lists. The web archives are fully integrated in the Sympa web interface, though the engine that does the HTML tranformation is an third-party tool.
Features
Access Control
This is probably the most interesting part of the Sympa web archives : you can
restrict access to a list web archives to a certain population (members of the
current list, members of another list, clients in particular IP address ranges,
users defined in an SQL/LDAP base). This fine tuning is defined via the
archive.web_access
list parameter. This
parameter refers to the corresponding
authorization scenario.
Access via mail command (INDEX
and GET
) may also be controlled with
archive.mail_access
list parameter.
Search engine
Sympa provides a search engine to search archive of each list. User can either use the standard search field or the advanced search page.
Messages removal
Sympa provides a "message removal" feature, accessible through a button from
individual message web pages. This feature is restricted to either message
authors (once authenticated) or list owners. Removal requests are then
processed by the archivd.pl
process; therefore it
may take a few seconds before it is removed.
Resending message
From individual message web pages, you can ask that the message is sent back to you, via SMTP.
Export of web archives
List owners have access to an archive management page from the web interface. From this page, they can download a ZIP of their list web archives. The ZIP is organized by month, each month containing original emails.
If you want to reimport archives from the ZIP file, you need to go to
$ARCDIR
/your-list@mail.example.org/
and unzip the file. After that, you
should rename every directory your-list_yyyy-mm
to yyyy-mm/arctxt
. Once
this is done, as a listmaster you have to connect to sympa, go to Listmaster
admin menu, archives and then rebuild archives for the list your-list
.
MHonArc tool
Sympa does not perform the MIME to HTML transformation by itself, neither does it build the messages index and threads. All this is performed by the MHonArc program. MhonArc is a software used beside many other mailing list softwares. The may Sympa uses MHonArc concentrates on integration.
You can customize the behavior of mhonarc
via the
mhonarc_rc.tt2
resource file.
The HTML view of archives is being delivered by the wwsympa.fcgi
process so
the MHonArc output uses Sympa TT2 template format. When modifying
mhonarc_rc.tt2
you may change the way MHonArc prepare archives or
you may change the way wwsympa.fcgi show them.
Note
- On Sympa 6.2.60 or earlier, the name of resource file was
mhonarc-ressources.tt2
.
For example, you may want to customize the archiving in order to reduce disk usage.
To change MHonArc behavior, we need to override its settings, configured in
default/mhonarc_rc.tt2
.
First, we need to copy that file to override it to keep our changes through Sympa upgrades.
cp default/mhonarc_rc.tt2 etc/
Then edit etc/mhonarc_rc.tt2
to add
MIMEIncs
and/or
MIMEExcs
sections.
MIMEIncs
MHonArc archives all parts it can find in the mail. MIMEIncs
allows to
specify the media types of the
parts that you want to archive, excluding anything else.
For example, to only archive text parts of a mail, add this to
etc/mhonarc_rc.tt2
:
<MIMEIncs>
text/plain
text/html
</MIMEIncs>
With this snippet, images (for example) attached to a mail will not be archived, but the plain text and HTML version of the body of the mail will be archived (along with any attachment matching those media types)
You can use a more generic media type:
<MIMEIncs>
text
</MIMEIncs>
Note
- MHonArc will archive parts of the mail matching a media type defined in
MIMEIncs
and not matching a media type defined inMIMEExcs
. That allows you to have a generic media type inMIMEIncs
and block archiving some more specific media types.
MIMEExcs
MIMEExcs
prevents MHonArc to archive mail parts matching one of the defined
media type, even if it matches a media type defined in MIMEIncs
.
Example:
<MIMEExcs>
image/jpg
image/gif
text/xml
</MIMEExcs>
See MHonArc manual for more informations on customization.
Archives structure
The web archives are gathered in a common directory
$ARCDIR
(location may be customized by the
arc_path
sympa.conf parameter).
This directory contains a subdirecty for each archived mailing list.
The list archive directory is structured a subdirectory for each month.
Eath month directory contains both the HTML pages for messages and indexes
and a subdirectory containing the orginal messsages in a text format.
Here is a sample list archive hierarchy :
$ARCDIR/your-list@mail.example.org/:
1997-07
...
2018-11
arctxt
1
2
...
mail1.html
msg00000.html
msg00001.html
msg00002.html
...
thrd1.html
Configuration parameters
sympa.conf
/ robot.conf
parameters
arc_path
archive_default_index
custom_archiver
default_archive_quota
ignore_x_no_archive_header_feature
mhonarc
process_archive
web_archive_spam_protection
list parameters
archive
archive_crypted_msg
process_archive
web_archive_spam_protection
See also "Archives" section of manpage.
archived.pl
daemon
A dedicated daemon, archived.pl
, is performing all
operations on list archives (adding a message to archive, removing a message,
rebuilding HTML files). This process is running as the sympa
user; messages
to archive and removal/rebuild commands are fetched from the archive spool
located at $SPOOLDIR
/outgoing
directory
(location may be customized by
queueoutgoing site parameter).
When it archives the first message ever for a given list, archived.pl
will
try to create its archive directory. If it can't, it copies the message into a
bad/
subdirectory of the archive spool.
Rebuilding web archive
Sympa provides a way to rebuild all HTML files for a given web archive. This is useful whenever you changed the mhonarc-resources.tt2
file or if Sympa changed its template format or the charset used for web pages.
The rebuild feature is accessible to listmasters only from the Sympa admin
- Archives
chapter from the web interface (See also
"Listmaster portal").
The rebuild is then run by the archived.pl
process.