phpMailingList A simple mailing list manager written in PHP. Copyright (C) 2016 Matthias Kerstner <matthias@kerstner.at> See https://www.kerstner.at/phpmailinglist/ for more information. ================================================================================ REQUIREMENTS ------------------------- + PHP 5.3 and higher. Works perfectly with PHP 7+. INSTALLATION ------------------------- 1) Extract archive to root folder of your webserver, e.g. /wwwroot/phpmailinglist/ 2) Edit config.ini to your needs, make sure to specify a valid email for "email_reply_to". 3) Customize form.php, error.php and admin.php to your needs. 4) Be sure to set correct permissions for the lists- and tmp-directory set in config.ini. 5) In case you want to password protect your list create a password file. This file should only contain one line - the md5 hash'ed value of your password, e.g. 098f6bcd4621d373cade4e832627b4f6 for password "test". Have a look at the sample list's password file. 6) Test your installation by creating a list, e.g.: lists/mylist/ 7) Call index.php?list=mylist to use your shiny new mailing list. Hint: In case you get write permission errors be sure to set the correct permissions for the lists- and tmp-directory (and any subdirectories and files). That should be it for now. Continue with the configuration section below to customize your setup. CONFIGURATION -------------------------- Everything you need (or can) configure can be found in config/config.ini. You are free to customize + form.php + admin.php + error.php to your needs. Make sure to leave the core input fields "as-is". USAGE -------------------------- phpMailingList provides the following core functionality: 1) SUBSCRIBE: Add members to a mailing list via form.php 2) UNSUBSCRIBE: Remove subscribed members from a mailing list 3) AUTHORIZE: Authorize a subscription request 4) SEND MESSAGE: Send messages to all members of a mailing list, optionally with files attached. SPAM Prevention --------------- Starting with version 3 you have the option to either force list members to LOG IN or to use the CAPTCHA functionality to prevent spam. 1) CAPTCHA In order to prevent SPAM messages a CAPTCHA field has to be filled out prior to any of the action provided by form.php, i.e. subscribe, unsubscribe and send messages. This is the default behavior. 2) LOG IN If you want your users to log in order to be able to send messages activate the option require_authentication in the configuration. 3) SHORT URLs As of version 3.2.0 phpMailingList also offers the possibility to use Google's URL shortener API to get pretty reply links in your mail. In order to enable this feature enter you API token in config.ini and you are all set. ADDITIONAL INFORMATION -------------------------- In case you receive a "Failed to send mail" message with an empty recipient email make sure that the email corresponds to a correctly configured and available domain. phpMailingList checks for valid domains via MX lookup.