PHP的邮件群发系统phplist配置方法详细总结


Posted in PHP onMarch 30, 2016

本文实例讲述了PHP的邮件群发系统phplist配置方法。分享给大家供大家参考,具体如下:

phplist是一个十分不错的邮件群发系统,让我们可以很方便地群发电子杂志、小广告(^_^)等。

最近帮一个老师搭建邮件群发系统,用的就是phplist。但是网上关于搭建该系统的资料很零碎,需要费些功夫组合起来才行。而既然我已经做了这个工作,就拿出来分享吧,希望对大家有用。(另外,phplist或是phpmailer通过gmail发送邮件比通过其他邮箱发送还要麻烦一些,如果你需要通过gmail发送,在看完这篇文章讲的基本配置后,请参考《phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法》来进行进一步的配置)

1.下载用最新版phplist(我用的是phplist-2.10.12)。

2.将public_html下的lists目录放到自己的web目录下(服务器上)。

3.修改lists/config/config.php,在其20行左右处修改数据库相关信息,然后在MySQL中建立与$database_name同名的空数据库(建议改数据库连接校对为utf8_general_ci,防止中文乱码)。

4.通过浏览器访问服务器上/lists/admin/,此时会提示数据库未初始化,点击“initialise database”链接,进行数据库初始化。初始化时可能会有一张表(user_blacklist_data)出现初始化错误,那张表是关于用户黑名单的,我不需要此功能,不影响使用也就不用管这个错误了。但如果你不能容忍这个错误,我这里也有一个解决方案:找到lists/admin/structure.php中的

"user_blacklist" => array(
 "email" => array("varchar(255) not null unique","Email"),
 "added" => array("datetime","When added to blacklist"),
 "index_1" => array("emailidx (email)",""),
)

修改为

"user_blacklist" => array(
 "email" => array("varchar(233) not null unique","Email"),
 "added" => array("datetime","When added to blacklist"),
 "index_1" => array("emailidx (email)",""),
)

drop掉数据库重建,并重新初始化数据库就好了。

5.下面还要进行一些基本配置:

仍然是lists/config/config.php,在190行左右处找到

define("TEST", 1);

修改为

define("TEST", 0);

因为只有非测试模式才能真正发送邮件。

然后在650行左右处找到

define("PHPMAILERHOST",'');

此为smtp服务器名,我用的是sohu的邮箱,所以改为

define("PHPMAILERHOST",'smtp.sohu.com');

往下几行可以找到

#$phpmailer_smtpuser = 'smtpuser';
#$phpmailer_smtppassword = 'smtppassword';

将其前面用于注释的“#”去掉,并填写自己发送邮件时所使用的用户名和密码,例如我会将其改为

$phpmailer_smtpuser = 'myname@sohu.com';
$phpmailer_smtppassword = 'mypassword';

如果你使用的不是gmail邮箱的话,那么应该是可以开始发送邮件了(我测试过的有sohu邮箱、qq邮箱、大学学校邮箱)——但需要注意的一点是,在发送测试邮件时目标地址必须是已经存在于你的user列表中的email地址,否则发送会失败。

如果你使用的是gmail,请参见我的另外一篇文章《phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法》。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP中在数据库中保存Checkbox数据(1)
Oct 09 PHP
我的论坛源代码(四)
Oct 09 PHP
使用Apache的htaccess防止图片被盗链的解决方法
Apr 27 PHP
记录mysql性能查询过程的使用方法
May 02 PHP
php类常量的使用详解
Jun 08 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
Jan 14 PHP
PHP缓存集成库phpFastCache用法
Dec 15 PHP
PHP使用mysql_fetch_object从查询结果中获取对象集的方法
Mar 18 PHP
PHP输入流php://input实例讲解
Dec 22 PHP
PHP创建word文档的方法(平台无关)
Mar 29 PHP
PHP实现断点续传乱序合并文件的方法
Sep 06 PHP
PHP使用Session实现上传进度功能详解
Aug 06 PHP
Laravel路由设定和子路由设定实例分析
Mar 30 #PHP
PHP的Yii框架中过滤器相关的使用总结
Mar 29 #PHP
简介PHP的Yii框架中缓存的一些高级用法
Mar 29 #PHP
深入解析PHP的Yii框架中的缓存功能
Mar 29 #PHP
PHP实现可自定义样式的分页类
Mar 29 #PHP
PHP的Yii框架中View视图的使用进阶
Mar 29 #PHP
PHP的Yii框架中创建视图和渲染视图的方法详解
Mar 29 #PHP
You might like
Laravel中使用Queue的最基本操作教程
2017/12/27 PHP
实例化php类时传参的方法分析
2020/06/05 PHP
Javascript 检测、添加、移除样式(className)函数代码
2009/09/08 Javascript
jquery $(document).ready() 与window.onload的区别
2009/12/28 Javascript
JQuery学习笔录 简单的JQuery
2012/04/09 Javascript
js验证电话号码与手机支持+86的正则表达式
2014/01/23 Javascript
window.print打印指定div指定网页指定区域的方法
2014/08/04 Javascript
jQuery针对input的class属性写了多个值情况下的选择方法
2016/06/03 Javascript
dul无法加载bootstrap实现unload table/user恢复
2016/09/29 Javascript
JavaScript实现窗口抖动效果
2016/10/19 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
浅谈vue引入css,less遇到的坑和解决方法
2018/01/20 Javascript
如何实现小程序tab栏下划线动画效果
2019/05/18 Javascript
JavaScript Array对象基本方法详解
2019/09/03 Javascript
解决layui laydate 时间控件一闪而过的问题
2019/09/28 Javascript
Node.js API详解之 Error模块用法实例分析
2020/05/14 Javascript
Python合并字符串的3种方法
2015/05/21 Python
Python 实现 贪吃蛇大作战 代码分享
2016/09/07 Python
python3.5+tesseract+adb实现西瓜视频或头脑王者辅助答题
2018/01/17 Python
Python实现的根据文件名查找数据文件功能示例
2018/05/02 Python
Python 3.8 新功能来一波(大部分人都不知道)
2020/03/11 Python
django中url映射规则和服务端响应顺序的实现
2020/04/02 Python
Python将二维列表list的数据输出(TXT,Excel)
2020/04/23 Python
纯CSS3制作页面切换效果的实例代码
2019/05/30 HTML / CSS
canvas使用注意点总结
2013/07/19 HTML / CSS
美国中小型企业领先的办公家具供应商:Office Designs
2016/11/26 全球购物
eVitamins日本:在线购买折扣维生素、补品和草药
2019/04/04 全球购物
体育之星事迹材料
2014/05/11 职场文书
我爱家乡演讲稿
2014/09/12 职场文书
学生上课看漫画的检讨书
2014/09/26 职场文书
2015年人事专员工作总结
2015/04/29 职场文书
2015学校图书管理员工作总结
2015/05/11 职场文书
中国式结婚:司仪主持词(范文)
2019/07/25 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
logback 实现给变量指定默认值
2021/08/30 Java/Android
python对文档中元素删除,替换操作
2022/04/02 Python